Jacek A. Korycki
53 Potomac Rd., Monmouth Junction, NJ 08852
732-438-8718, korycki@netscape.net
OBJECTIVE
Challenging research and
software development position at a leading company in the field of computing
and communication.
EDUCATION
1993 - 1995
Ph.D. in Mathematical Sciences
(Optimization), Clemson University, SC,
GPA 4.0/4.0.
Thesis: “Norm-Relaxed Method of Feasible
Directions”.
1987 - 1992 M.S./B.S.
with High Honors in Electronic Engineering, Warsaw University of
Technology, Poland,
GPA 4.8/5.0. Thesis: “Distributed Implementation of Parallel
Decomposition Method for Multistage Stochastic
Programming Problems”.
EMPLOYMENT HISTORY
Reuters, New York, NY, 9/2006 – present
Software Architect, Reuters
Collaboration Services (Reuters Messaging)
Software Architect, Services Incubator Group
Senior Software Engineer, Next Generation Network Evolution Group
Melita International, Norcross, GA, 9/1995 - 5/1999
Senior Software Engineer,
Advanced Technology Group
PROJECT EXPERIENCE
Software Architect,
Reuters , New York, NY, 9/2006 –
present.
Member of architecture group within Reuters
Collaboration Services (a.k.a. Reuters Messaging). RCS is a hosted Instant
Messaging network for financial professionals, plus additional web
collaboration services such as social networking and compliance. Its foundation
is a Microsoft Live Communication Server platform. Performed architecture
duties spanning all aspects of project lifecycle: ideation, requirement
analysis, design, software development, deployment in a data center and
operation.
Designed, lead development of
and helped deploy the web based Thin Client for Reuters Messaging, a
complementary solution to the primary installed “thick” IM client. The
application was based on Communicator Web Access, an element of Microsoft LCS
platform serving as an HTTP to SIP gateway. This work included development of
an AJAX application using Microsoft Communicator Web Access AJAX API,
JavaScript and HTML DOM programming. XML and JSON formats were used in a
network protocol. Functionality included a pop-up IM conversation window with
assigned contact and a presence control for the contact. The application can be
integrated with any Reuters web site, using integration based on URL embedded
in the host web site.
Designed and developed a
Credential Manager web service to allow users to safely save the credentials on
the server side, so that the application does not require manual sign in each
time it is used. The web service was XML over HTTP, developed using ASP.NET
System.Web.IHttpHandler and deployed in IIS web server. The credentials were
encrypted on the server side using .NET System.Security.Cryptography APIs.
Developed a simple to use cryptography library encapsulating .NET APIs. Special
care was taken to make the design secure, and specifically to prevent any way
of retrieving the credentials back to the client. Credential Manager service
was signing in to the back end on behalf of the user, relaying back a session
token, so that the client JavaScript application could start talking directly
to the backend.
Designed a system
architecture, including network setup in the data center, load balancing using
Cisco CSS switch. Provided guidance in performance engineering, analyzed
capacity test results. Held security review and analyzed penetration test
results. Created architecture document (Product Implementation Architecture
doc), and held multiple reviews in accordance with Reuters deployment process.
Conceptualized and
single-handedly prototyped a next generation thin client based on Comet HTTP
Push framework and Dojo toolkit. Developed a radically new IM back end server
based on Microsoft Unified Communication Managed API (UCMA), which provides
scalable API to a Microsoft LCS SIP channel. Abstracted the UCMA out into a
simple and asynchronous RCS API, and developed a complementary web service in
ASP.NET, using XML / HTTP paradigm, hosted in IIS. Developed middle tier server
based on Jetty Java servlet container, with Jetty comet servlet, enhanced in
Java for the purposes of the IM application. Deployed Jetty in Tomcat web
server. In the presentation tier, executing in the browser, utilized Dojo
JavaScript toolkit, including the Dojo comet library, cometd, that interfaced
with the Jetty comet servlet in the middle tier. Leveraged dojo UI support to
design a comprehensive basic IM application. The application was a single
browser window communication center, with multiple conversations within it.
Designed application presentation layer with several self contained controls
(contact list, conversation list, current conversation, user presence),
developed using JavaScript, Dojo and HTML DOM, encapsulated within clearly
defined JavaScript API. The controls were managed by the “glue code” that also
interfaced with a comet based communication adapter. Functionality included in
the application: multiple conversations, incoming and outgoing, conversation
swapping, contact list with presence updates, presence publishing, message
typing indications, contact picture, incoming conversation toast. Application
was found very responsive, especially in the HTTP push scenarios, making it
virtually undistinguishable from the traditional “thick client”.
Served as systems architect
for Compliance Manager project, working with a development team in Thailand.
Compliance Manager is a farm of load balanced SIP servers and a database that
logs all IM conversations, and in addition applies active compliance policies
such as message filtering and enforcement of communication boundaries. This is
a multi-tenant application, with users segmented into multiple companies, with
strict separation of access to company data. The system includes a Tomcat web
sever (load balanced farm) providing administration interface for each customer
company, through which the company compliance officers can manage and review
their company employees’ communication. The system was based on Face Time
enterprise system that was re-purposed for multi-tenant scale.
Designed SIP topology for the
Compliance Manager, placing it in the SIP path between the access SIP proxies
and internal SIP home server proxies. Developed a special SIP Routing module
for the access proxy to allow dynamic routing of compliant and non-compliant
users within the datacenter, preserving the single point of access for all
users. This SIP Routing module is a .NET application interfacing with Microsoft
Live Communication Server via Application Module .NET API. The application was
developed in C# and deployed as a Windows service. Windows installer was
provided.
Documented and proposed a
next generation SIP topology based on IP Multimedia Subsystem (IMS)
architecture. The Compliance Manager is viewed there as a SIP Application
Server, with a special SIP signaling loop between SIP home server and the
application server, as prescribed in the IMS.
Compliance Manager system was
very challenging to scale, since the single database in the original Face Time
design proved to be a bottleneck. The main load is the logging of IM
conversations. This OLTP traffic has to co-exist with simultaneous reporting
and analysis, as well as data purging and exporting jobs, all running in
parallel. Number of performance problems were identified and addressed. The
mitigation strategies included: index and query tuning, complete redesign of purging
and exporting jobs, migration from 32 bit SQL 2000 to 64 bit SQL 2005 platform,
with significant memory upgrades allowed by 64 bit OS. Above all, the database
was split into read and write portions, using transactional replication. The
replicated architecture included a cluster of 2 Publisher DBs, a cluster of
Distributor DBs, and 3 load balanced Publisher DBs
Designed a system
architecture, including network
setup in the data center, load balancing using Cisco CSS switch, wildcard
domain name and corresponding wildcard SSL certificate for HTTPS. Provided
guidance in performance engineering, analyzed capacity test results. Held
security review and analyzed penetration test results. Created architecture
document (Product Implementation Architecture doc), and held multiple reviews
in accordance with Reuters deployment process.
Designed
architecture for hosted platform for Reuters IM agents (bots). The hosted
platform includes a farm of application servers that act as containers for
agents. Agents are deployed as DLL libraries in a container, similar to J2EE
servlets. Containers instantiate agents in run time by reflection using provisioned class name, and provide container
services to agents. The farm of containers is overseen by an Agent Admin
server, which collects diagnostics, monitors health and coordinates failovers
of agents between servers. Agent Admin server implements a web based UI
allowing operations staff to configure the system, including installation of
new agents, and to monitor the platform activities. Developed a prototype of
the platform and deployed in a datacenter as a beta. Worked with development
team on productizing the prototype.
Developed
a sample agent application on top of the platform, a Chat RSS feed. This
application uses agents logged in to Reuters Messaging chat system, as IM
users, in order to compile an RSS feed of latest chat room posts. The agents
were deployed within two Agent Containers. The front end part of the application
was an ASP.NET HttpHandler application, that presented the data from the
database as an RSS feed. Access to the database was done using ADO.NET. The
most important part of the application was authorization of web users that
reflected the authorizations put in place in regular chat system.
Authentication of a user was done using HTTP basic authentication over HTTPS,
with LDAP query to Active Directory, using .NET DirectoryServices API.
Authorization was was based on a check of chat room ACLs retrieved by agents
from the chat system. The ASP.NET web application was deployed in IIS on two
load balanced servers, with single domain name and associated SSL certificate
for HTTPS.
Senior Software Engineer /
Software Architect, Telcordia Technologies (Bellcore) , Piscataway, NJ, 6/1999 – 8/2006.
Member of Next
Generation Network Evolution group.
Research, prototyping, software architecture and development for
Telcordia's Next Generation Network product line. The project areas include:
mobile phone development, seamless mobility, IP Multimedia Subsystem (IMS)
services, location services, TV set top box development, converged telephony
and data collaboration, multicast and web services based corporate broadcast
application, multiparty session management web services for collaborative
broadband communication applications, advanced services in softswitch
environment and data QoS management.
Seamless
Mobility prototype,
12/2005-8/2006
Designed and
developed a prototype of seamless mobility controller based on IP Multimedia Subsystem (IMS)
architecture. The prototype was implemented with SIP servlets, JSR 116, utilizing Telcordia SIP Application Server
(SAS). Development was done using Eclipse IDE and ANT deployment scripts
integrated with Eclipse. The system controls phone calls for dual mode phone
operating on both WiFi and cellular
access networks. It allows selecting proper access network for terminating
calls based on the user’s location (on / off WiFi hotspot). It also allows
seamless handover and handback of user’s calls when moving between WiFi and
cellular access networks. The prototype leveraged OO inheritance mechanisms by
defining a reusable B2BUA base servlet and placing seamless mobility features
in a few derived servlets. Used Audiocodes PSTN gateway. The prototype was
sucessfully tested and performed two way handoffs between WiFi and GSM using a dual mode phone iPAQ 6315 with PCTel client
and GSM SIM card. It was also verified with a dual mode CDMA phone PPC6700
with CoreMobility client. For NAT traversal utilized STUN server and port forwarding (Applicatoin Level
Gateway) settings on the Actiontec DSL modem. Used stund from SourceForge.net.
Invented an idea
and filed an application for a patent for adaptive
seamless mobility, where the communication sessions dynamically adapt to
changing access network capabilities. Implemented an example of adaptation in a
prototype by allowing the voice call to evolve into a video call when the user
moves from cellular to WiFi access network.
Architected and
implemented a location interface based on WiFi access point ID maintained by
SIP registrar. The location information was opened via Mobile Location Protocol
(MLP), the standard location protocol defined by 3GPP. Architected and
implemented a SIP service broker component that allows chaining seamless
mobilty with additional features and services such as multiple location ringing
or communication portal with enhanced caller ID (e.g. TV-caller ID).
Architected a mechanism to add additional resources to a seamless mobility
call, such as a recording or another party.
Developed web
based administration and diagnostic application for seamless mobility server.
Application GUI was done 100% with AJAX, utilizing Google Web Toolkit (GWT).
Comunication with the server was done using asynchronous HTTPRequest to refresh
the user interface without browser page reload.
Wireless
Communications Portal prototype,
4/2005 – current
Invented,
designed, implemented and tested a mobile communications portal application
based on CCS (Converged Communication Services) framework allowing the user to
access telecom services using a mobile phone. The prototype application
consists of a combination of a WAP portal, mobile messaging using SMS and MMS,
and J2ME mobile application.
WAP portal was implemented as a servlet deployed in IBM WebSphere application
server and communicating with CCS EJBs via CCS API. The servlet renders the
content in both WML and XHTML
formats. Application scope includes network based call logs (not only mobile
phone but also other subscriber’s telephone lines), network based contacts,
click to call from call log and contacts, and provisioning of call alerts (e.g.
provision new SMS call alerts, turn existing alerts on / off). Invented and
implemented a format-neutral rendering
library that allows application to use the same API to generate both WML
and XHTML content, without a need to branch the logic. Features of the portal
included adaptation of content to browser capabilities (e.g. outputting
pictures (logo, user picture, map) only if support for the picture format is
declared by the browser). The portal was tested on a number of mobile phones
and also on Nokia WAP simulator.
Mobile call
notification application was developed as an EJB application on top of CCS
framework. It supports both MMS and SMS delivery method. In case of MMS, I
developed MM7 library encapsulating
3GPP MM7 interface. The library encapsulated building the XML header as well as
building of MIME parts including base 64 encoding. The library can accept content
by value or by reference, e.g., as HTTP URL of a JPEG file. The library also
includes support for SMIL. The MM7 interface was integrated with Airwide
messaging gateway using Microcell as GSM operator. The application using the
MM7 interface sends MMS messages to the subscriber informing about missed calls
on other phone lines (e.g. home, work) with content depending on amount of
information collected about the caller (ranging from just a telephone number to
number, name, contact info including picture and personal melody, and current
location info including text and map).
The application can also be configured to send the call notification via
SMS as a simple text (number and name of the caller). Sending of SMS was
implemented using email-to-SMS gateways of several mobile operators.
Application used JavaMail API to send SMTP messages to email-to-SMS
gateway.
J2ME application prototype allows the user to access location-based “city
guide” where multimedia content is looked up automatically based on user’s
current location and offered to the user for viewing. Information may include
streaming video, viewing of which includes a charge. J2ME application client
(midlet) was built using Sun Wireless Toolkit integrated with Sun NetBeans IDE (v 4.1 and 5.0) . Application
used J2ME mobile multimedia API for streaming video playback. Other J2ME APIs
used: midlet, javax.microedition.lcdui for GUI, record management system (RMS)
for persisting user’s preferences on a mobile, javax.microedition.io for
networking. The server side of the application was built with J2EE and was
deployed as a servlet on IBM WebSphere where it interacts with Telcordia CCS
EJBs. Communication between J2ME client and J2EE servlet was based on HTTP
utilizing lightweight RPC middleware (RpcLite, see description below), part of
which was ported to J2ME using javax.microedition.io APIs. Application was
integrated with Telcordia Real-time Charging System using CORBA interface. The
application was also tested on a few real mobile phones (Samsung T-809, Nokia
N80, Sony Ericsson W600i) using Over the Air (OTA) activation. The application JAD URL was placed on the WAP
portal site to allow installing the app from the mobile web. Application
controlled mobile video was working on real phones as well, including download
of short 3gp clips and RTSP-based streaming of larger clips. User was able to
control the playback (start, pause, resume, stop, play a diferent clip).
Location-based
services, 12/2004 – current
Architect and lead
developer for a prototype demonstrating integration of Telcordia CCS framework with location
information using Mobile Location Protocol (MLP)
as well as proprietary Clarity
location server using Clarity’s XML / HTTPS interface. Designed a high level
Java API encapsulating the MLP and Clarity interfaces and adding additional
features. Developed Java library implementing the API using J2SE as well as
EJB. The API allows query for mobile phone location including latitude /
longitude coordinates, address, speed and heading of the movement, accuracy,
measurement time, as well as map. Used maps from Microsoft MapPoint web service
(obtained via Clarity server) as well as Google maps integrated via Google
JavaScript API (including advanced Google map features such as zoom controls,
location marker with information callout window). Utilized the location API in
a number of communication portal applications in a push model (caller ID with
caller’s location) and pull model (query of contact’s location). Applications
included: TV set top box application, PC browser application, WAP portal for
mobile phones, mobile caller ID with location via SMS and MMS, and J2ME
city-guide application.
Implemented a Parlay X web service wrapper for
Clarity interface based on standard WSDL
defined by 3GPP. Utilized WebSphere support for web services development.
Designed and led
development of MLP-based developer’s
toolkit, including MLP location viewer (using Google maps API), MLP
simulator and route builder (allows defining landmarks and routes for mobiles, allows submitting routes for execution
to a simulator as well as controlling execution speed).
Led development of
time-zone location service integrating Telcordia SPACE service creation
environment and MLP.
TV-based
Communications Portal (Bluestreak Flash
middleware for SA set top box), 4/2005
Ported part of
PowerTV set top box application to Macromedia
Flash platform. Developed set
top client app with Macromedia Flash IDE using typical Flash features such as
movie clips, timelines and animations. The processing logic and network
communication was done using ActionScript, the object oriented Flash scripting
language. The application was tested with both PC Macromedia Flash player as
well as Bluestreak Flash player running on a Scientific Atlanta set top box.
TV-based
Communications Portal (PowerTV
Scientific Atlanta set top box), 9/2004 - 12/2004
Invented,
designed, implemented and tested a TV communications portal application based
on CCS (Converged Communication Services) framework allowing the user to access
the services using a standard TV connected to Scientific Atlanta set top box. The application scope included: TV
caller ID, TV caller ID with user directed call routing, interactive call logs,
personal directory, click to call from call logs and directory, location based
services (push: current location info of the caller on caller ID screen, pull:
current location of the contact), management of caller ID notification on TV
and other devices (e.g. provisioning mobile alerts via SMS or MMS). The user
interface features included: user interaction entirely via standard TV remote
control (mostly using cursor and select buttons), transparency for viewing the
current program video next to application elements, translucency of screens to
allow viewing both application elements and program video in the background.
The application had a J2EE-based server component (WebSphere) and SA
PowerTV-based client component. The server component was a servlet utilizing
the CCS EJB APIs. The client component
was written in C using PowerTV APIs and was executing on a Scientific
Atlanta set top box (SA Explorer 3100 and 3200). Communication between the set
top box client and the server was based on a mixture of HTTP and TCP utilizing
the lightweight portable distributed computing middleware (RpcLite library, see
description below).
Designed and
implemented a reusable TV Menu Processor
middleware on top of SA Power TV. Invented a user interaction model based on
vertical items (selectable, non-selectable, editable, non-editable, tabulated
etc) and horizontal actions. All user interaction is via cursor arrows and
Select button on the TV remote. Menu processor is easy to use for the users
(intuitive approach repeated over and over on each screen) and easy for
developers to generate menu logic on high level, essentially without
interaction with PowerTV concepts or APIs. Applied TV menu processor to quickly
generate about 20 screens implementing prototype business logic on the client
side.
The project scope
included signing Telcordia up with Itaas Scientific Atlanta STB development
program (NDA, procurement of hardware and software). The TV prototype was used
in numerous demonstrations for Telcordia customers (Cox, Qwest, SBC, Verizon,
Telus…) and was shown on multiple trade shows (several VON conferences, CSTA
cable TV conference).
Converged
Communication Services framework: design and prototype implementation,
productization support
5/2004 – current
Served as software
architect and lead developer
assigned to define a new paradigm
and API for building converged communication portals spanning multiple
telephony networks (PSTN wireline, wireless, VoIP) and multiple end user access
devices (TV, PC, mobile phone). The API differs substantially from traditional
telephony APIs (Parlay, TAPI, JTAPI, etc) in a level of abstraction open to
developers. It provides pre-built application building blocks with APIs
allowing further customization that centers mostly on presentation of the
building blocks functionality in a specific en user environment (PC, TV,
mobile).The building blocks include call logs, click to call, caller ID
notifications, dynamic user control of incoming calls (user directed routing),
contact lists, subscriber profile management, service feature management,
location based services support, mobile messaging (SMS, MMS). The API allows
non-telecom software developers to easily build communication portals that span
a variety of telephone networks without getting bogged down into the gory
detail of these complicated networks. I lead development group designing and implementing a
prototype, supported numerous customer trials (Telus, Qwest) and supported
productization effort. Key parts of the project include:
·
Define EJB APIs for communication “application building blocks”
·
Implement
building blocks using stateless session beans and entity beans with Container Managed Persistence (CMP)
bound to JDBC-compliant database (DB2, MySQL).
·
Deployment of
CCS in IBM WebSphere, testing with
applications deployed in WebSphere or in BEA WebLogic. Resolved a number of issues in WebLogic – WebSphere EJB
interoperability.
·
Design and
develop Parlay-gateway adapter
allowing connecting CCS to a Parlay-enabled telephone network. This work
included interfacing with Parlay framework, Parlay Multi Party Call Control (MPCC) and User Interaction
(UI) APIs.
·
Design and
proof of concept implementation of high
availability features of CCS including high availability support in J2EE
and J2SE/CORBA environment. Utilized Visibroker
ORB high availability features (server
engines, persistent Portable Object Adapter (POA), embedding redundant server
IP addresses in POA).
·
Testing CCS
with a number of Parlay gateways: Telcordia AIN Parlay gateway connecting to
PSTN network (test with Nortel DMS 1000 switch), Telcordia SIP Parlay gateway
(test wit SIP network using SIP phones), Open API Solutions Parlay gateway
simulator.
Lightweight
portable distributed computing middleware, 12/2003 – 2/2004
Invented a new paradigm for lightweight
distributed computing called RpcLite. The key idea was to introduce a simple API allowing splitting the
function of remote procedure calls (RPC) and the medium or connectivity
mechanism over which it is performed. This idea is in contrast to traditional
RPC methodologies such as CORBA and web services which are lacking these
features. I developed implementations of the API in the following environments:
Java. J2EE (server side binding to Java servlets), J2ME, C, C#. I successfully
used the library in a number of Telcordia projects. The applications included
communication between J2EE server and a client running on Scientific Atlanta
set top box (C implementation), as well as in bridging between CORBA J2SE
processes and J2EE stateless session beans.
ShareNow service:
Web-based converged telephony and data collaboration application on IBM
WebSphere platform, 5/2003 – 12/2003
Invented and
helped develop a unique web-based application combining plain telephone calls
with third party web data collaboration products, such as DCL T.120 server. I received a US patent for the invention.
Application allows users to easily enhance their phone calls with advanced
PC-based data collaboration features. Participated in a full cycle of the
project including concept development, patent writing and submission to patent
office, development and deployment,
installation of tools (WebSphere Studio 5.0, CVS NT source control
system, WebSphere Server 5.0, DB2 8.1 database), installation troubleshooting,
software design, software development and unit testing in WebSphere Studio,
deployment to WebSphere Server and full integration testing followed by
internal user trial support and problem resolution. Worked on the following
system components:
·
Core business
logic using stateless session beans
·
Persistent
storage using entity beans with Container
Managed Persistence (CMP) mapped to DB2 database
·
Web components
including development of servlets and user interface consisting of multiple JSP
pages with sophisticated JavaScript
·
HTTP based
integration with 3rd party web collaboration server (DCL server)
·
Integration
with C-based TAPI application controlling Nortel Meridian PBX.
·
Deployment of
the system in Telcordia DMZ. I enabled HTTPS by deploying Verisign SSL certificates in both Apache and IIS web servers.
Multicast, streaming video
and web services based corporate broadcast application, 10/2002 – 5/2003
Served as software architect
and lead developer charged with invention, design, implementation and testing
of an application / service for large scale corporate broadcasts. Application
has been trialed internally as well as externally. Application allows large
number of participants to join the broadcast based on announcements and receive
audio/video stream of the presenter, presentation Power Point slides broadcasted in real time via IP
multicast, and questions asked by the audience. Participant can ask
questions, vote on existing questions and receive the current question set and
votes in real time via IP multicast. Application allows optional use of
moderators who pre-screen the questions. Multiple presenters are allowed and
the video stream can be switched between presenters. The unique technical
feature of the application / service is a combination of multiparty session
management web services (described below) and IP multicast technology. This
allows on one hand to scale the application to large number of users due to use
of IP multicasting, and on the other hand to allow some level of interactivity
due to use of web services. Design addressed technical challenge in synchronizing
the delayed video stream with data transmitted instantaneously in bursts.
Application was developed on .NET platform using VisualStudio.NET, C# and .NET Remoting. Contributed to the
development of the following application components:
Multiparty session
management web services for collaborative broadband communication applications, 1/2001 – 10/2002.
Served as software architect
and lead developer defining an architecture and implementation for a new .NET-based web services platform. The
platform allows rapid development of broadband communication services that can
be offered by big telecom service providers such as Verizon and BellSouth. In
this architecture, the service consists of PC-based multimedia application
instances running on behalf of each user participating in a session invoking
web services of the session management server as well as interacting directly
with other users’ application instances in a peer-to-peer fashion. The session
management server offers SOAP-based web services that fulfill common session management functions encountered
in many collaborative on line services, such as session participation
management, session invitations and announcements, advanced management of
multi-party IP media streams within a session. Helped design and implement an
array of sample illustrative services / applications utilizing the common web
services. These applications included: collaborative video on demand, advanced
multi-party conferencing, distance learning and home automation. The
architecture is based on concepts of TINA, Telecommunication Information
Network Architecture. The objective was to transform the complex concepts of
TINA into implementable web-services based architecture.
Quality of Service (QoS)
management in broadband access networks,
6/2000 – 1/2001.
Software architecture,
research and prototyping for Policy Decision Point system performing QoS
management of broadband edge routers (Redback SMS and Nortel Shasta). Performed assessment and comparison of
capabilities of Redback SMS and
Nortel Shasta edge routers with respect to dynamic QoS policy changes. Helped
define an approach for controlling Redback SMS router in real-time via RADIUS
protocol and proprietary Redback CLI configuration interface. Created a lab
prototype of a QoS management system utilizing 2 Redback SMS routers,
SteelBelted RADIUS server, PC-based PPPoE clients, 2 Cisco 3600 routers and Cisco LS1010 ATM
switch. The prototype was essential in defining and validating the QoS
management API.
Defined high level API for
controlling QoS policy of Redback SMS routers, helped define a CORBA IDL
version of the API.
Advanced services in
softswitch environment, 6/1999 –
6/2000.
Research and prototyping for
Telcordia's softswitch architecture,
the base of Telcordia commercial product, the Service Manager. The prototype
demonstrated enhanced services offered in NGN environment, such as subscriber
mobility with location registration via smart
cards (Java button), infrared / wireless Palm Pilot integration, computer
telephony integration etc. The core of the prototype, including the Call Agent,
was developed in Java. The signaling protocols supported include MGCP as well
as H.323 and SIP. Voice transport based on VoIP (Cisco UBR900 access gateways)
as well as on ATM (custom built gateways using ATM interface cards from IML).
Senior Software Engineer,
Melita International , Norcross, GA,
9/1995 - 5/1999.
Member of Advanced
Technology group. Design and implementation of a software component
framework for Computer Telephony server.
Windows NT based, multi-chassis system, voice and data between nodes
distributed across ATM or IP network, Object Oriented CORBA (Orbix) / C++
software architecture, VoIP / ATM / ISDN / DSP / analog telephony resources.
Used commercially in Melita call centers. Personal contributions consisted of
the following component projects. Each project included a full development
cycle consisting of conceptualization, design of CORBA interfaces using UML,
design of implementation classes and persistent storage, coding in C++, unit
testing, integration testing and maintenance.
SOFTWARE DEVELOPMENT SKILLS
Web development |
Javascript, comet, AJAX, Dojo, DOM, J2EE,
JSP, Servlets, EJB (IBM WebSphere), Java applets, Apache Jserv, CSS, CGI,
Perl, Google Web Toolkit (GWT) |
Application Servers |
IBM WebSphere 5.0, 6.0, BEA WebLogic 8.1,
Apache Tomcat, Jetty, Windows clustering |
Mobile development |
WAP, WML, XHTML, J2ME, OTA, MM7 |
Distributed computing |
EJB, .Net Remoting, CORBA (Orbix,
Visibroker), Java RMI, TCP/IP sockets including IP multicasting. |
Web services |
REST API style, XML over HTTP style, XML
RPC, SOAP, Java HTTP Servlet, Microsoft .NET, ASP.NET |
Tools |
VMWare, Eclipse (WebSphere Studio /
Rational Application Developer, MyEclipse IDE), NetBeans, Macromedia Flash, VisualStudio
2005, JBuilder, Visual
SourceSafe, CVS NT |
XML |
XPath, XSD, SAX, DOM, Java JAXP APIs, .NET
System.Xml APIs, Javascript XML APIs |
Persistence |
SQL Server 2000, Transact SQL, DB2,
ADO.NET, JDBC, EJB QL, C-tree:
lightweight ISAM persistence library, J2ME Record Management System (RMS) |
OO analysis and design |
UML, Rational Rose, Visio UML |
Programming languages |
Java, Javascript, C#, C/C++, Macromedia
Flash ActionScript |
TV development |
Scientific Atlanta Power TV, Bluestreak
Flash middleware for Scientific Atlanta, OCAP (ADB set top box) |
IP Communication / VoIP |
SIP (Microsoft LCS and OCS stack,
dynamicsoft stack, Telcordia SIP servlets), STUN server, X-Tunnels, H.323
(DataBeam stack), MGCP (Telcordia stack), Microsoft Real Time Communication
APIs, Microsoft NetMeeting SDK / ActiveX control, Dialogic (DM3 VoIP
architecture and APIs, ISDN/T1/station/DSP APIs, Dialogic SC bus switching,
IML ATM adapter APIs. |
Networking |
Cisco CSS load balancers, Redback Networks
SMS and Nortel Shasta edge routers, PPPoE, bridged 1483 encapsulation, GRE
and L2TP tunneling, QoS policy management using RADIUS |
PATENTS
PUBLICATIONS
7. “Norm-Relaxed Method of Feasible Directions”,
Ph.D. Dissertation, Clemson University, 1995.