I bring over ** years of hands on experience in application development, by analyzing and designing full life cycle projects with (Rational Rose) UML modeling, design patterns, STL and component architecture. Using my experience leading discovery, I collaborated on vision creation and casting vision at the C level.
I have coordinated, designed, implemented and unit-tested software using (OOA/OOD) object oriented design and development with C, C++, C++11, Objective-C, perl, python, C# in various UNIX, Macintosh, Linux & Windows platforms.
At EMC...Porting applications for Service Processor in VMAX2 Symmetrix system, from Windows XP Embedded to Windows Standard Embedded 7. The important applications include EMCRemote, Symmwin, Simplified Symmwin, SSCKey Client.
Connected Drive project design & development, targeting Windows 10 platform, at Hewlett Packard.
Enterprise Resource Management application development, functional extension and bug-fixing in the core engine (C++) and collaborating modules (in C#) at ScheduALL.
Plug-in development for various devices for Emerson Network Power.
Citrix ICA, IMA & XenApp life cycle management, installer package development for Windows 2008 & various Windows Clients.
Credit Suisse FIX protocol implementation for trade reporting to NASDAQ.
Verizon FiOS Voice provisioning.
FDA compliant software development for Clinical diagnostic instruments at BECKMAN COULTER.
Stock management application in US Alliance Federal Credit Union project.
Digital Video capture from surveillance camera and processing and Digital Audio.
CISCO WAN Engineering project.
Bachelor degree with Mathematics, Physics & Chemistry (UNIVERSITY OF CALCUTTA, India)
Master of Computer Applications (FIRST CLASS, UNIVERSITY OF CALCUTTA, India)
Diploma in Operational Research (DISTINCTION, O.R. SOCIETY OF INDIA, India)
Server-side development in C++ (MS 2005) with heavy use of design-patterns, data structures, algorithms, STL, templates, Web Services, Win32 platform SDK & multi-threading. OWL, MFC, COM/ATL, WinSock, Windows NT Service Development and Microsoft Visual Studio 2005 IDE tools. .NET Framework-based applications using C# & NUnit.
Web Service: C++11 client applications for REST-based APIs, using Casablanca library, gSOAP (C++)
Unit testing: VC++ server components, based on CppUnit
XML: Data binding tool (CodeSynthesis), XML SAX, DOM (Microsoft & Xerces) parsers.
C++ and scripting: C++11, GNU C++ toolchain, automake, perl, python, php.
Modeling Tools: Rational Rose UML modeling and code generation, Enterprise Architect
Version Control System: Git, Perforce, Rational ClearCase, Continuus, Team Foundation Server.
Bug tracking system: Rational ClearQuest, Bugzilla.
RDBMS: PostgreSQL, SQLite3, MS SQL Server (w/ T-Sql), DB2, Ingress, Sybase (w/ T-Sql), MySQL, Pro*C pre-compiler
GUI Development: Knowledge of GUI application development using QT/C++, Objective-C in MacOSX.
.NET CLR: Knowledge of .NET component-oriented development with assemblies, versioning, lifecycle management, events, asynchronous calls, multithreading, serialization & persistence.
EMC, Hopkinton, MA Nov 2015 – recent
Windows 7 Embedded Solution Consultant /Coordinator.
VMAX 2 Enterprise Storage platform
Porting applications for Service Processor in VMAX2 Symmetrix system, from Windows XP Embedded to Windows Standard Embedded 7. The important applications include EMCRemote, Symmwin, Simplified Symmwin, SSCKey Client.
I am responsible for development of solutions, technical support, tracking status on projects, coordinating schedules and setting up meetings with members worldwide, located in Ireland & India.
Windows Standard Embedded 7 image building: using various OS components (for OEM) to build the windows image file to target USB boot device for re-imaging. Iteratively re-building the target USB boot device, triggered by XPE to WES7 compatibility solution.
Application compatibility: Modify & test applications written in C & C++ to for portability (Win32 API calls that references Windows Standard Embedded 7).
WISE installer updates: Based on portability and code changes, update installer script.
EMC onsite coordination: Coordinate deliverables, activities, plans amongst distributed offshore and onsite teams in Hopkinton(MA), Cork(Ireland) & Bangalore(India).
Windows 7 (laptop) for project coordination infrastructure, Symmetrix VMAX system on the Enginuity operating environment. Wise installer, git, cvs, syren(build system), Service processor running Windows Standard Embedded 7, various windows utilities including diskpart, imagex.
HEWLETT PACKARD, Fort Collins, CO May 2015 – Oct 2015
Senior C++ Consultant, HP Connected Drive
To be bundled with all HP laptops & PCs with Windows 10, around late October 2015, that allows a user to create public & private file repositories, for sharing with other users, and access from any connected device.
Discuss, design, implement & dev test (includes unit test) various features, targeting the MVP.
Generic Polling System: used by various clients, that need to execute tasks repeatedly in a pre-defined interval. Tasks currently include file crawler, watcher, listener and various REST API actions.
Temporary Storage & Device access services: various C++ server-side REST client classes, that are used by system wide modules.
Persistence subsystem: Using persistence system API (MS SQL Server 2008 for database storage/retrieval) to save & retrieve various system states.
Unit and functional tests: Build C++11 code for Win 10 development environment and execute tests for the target OS (Win 10).
Windows 8.1, Microsoft Visual Studio 2013 (C++11), MS SQL Server 2008, SQLite3 embedded database, Web Services (REST APIs), Casablanca (REST client API library), various in-house cloud explorer tools.
SCHEDUALL, Hollywood, FL July 2012 – May 2015
Senior C++/ C# Engineer, Core engine & .NET extension modules
Enterprise Resource Management application development, functional extension and bug-fixing in the core engine (C++) and collaborating modules (in C#).
Core side development based on in-house or client requirements, targeting bug-fixing and functional extension, in various version releases.
Database table extension from in-house declarative statements.
.NET server-side development in preference management system, and unit testing.
Windows 7 Professional, Borland 2005 IDE (Object Windows Library, comparable to MFC) and related tools, Visual Studio 2010, 2013 with bundled resources and tools, Team Foundation Server, scripting languages including python & PowerShell, MS SQL Server 2008, Oracle 11g.
EMERSON NETWORK POWER, Sunrise, FL March 2011 – July 2012
Senior Member of R&D Team
Engine feature development & plug-ins (Element Library) for Data Center devices
Design and develop plug-in libraries for Cisco UCS Manager (server virtualization infrastructure) and Liebert Deluxe (data center climate controller). Design and develop event reporting based on discrete threshold data-point rules for device and (Oracle) Complex Event Processor. Design and develop platform-exporters (python code, using reactor and dbus library) for asynchronous response, event and data-points.
Gather and understand Engine and Platform side architecture and position discrete threshold data-point rules feature in the existing design.
Understanding device transport protocols (Velocity, BACnet, Modbus, HTTP) & device communication APIs (Cisco UCSM XML API).
Design, develop and unit test code for plug-in, that implements calling and use callback interface, specified by the Element Library Framework.
Assure quality and behavior of developed plug-ins by testing in Trellis Appliance Simulator, in the MSS Engine environment.
Developed XSub/C interface for functional tests, accessible from perl script, for various device protocols including BACnet, Modbus TCP/IP & SNMP.
Red Hat Linux, VirtualBox Manager, Ubuntu 10.04, Windows 7, GNUC++ tool chain, Valgrind (profiler & memcheck), Postgresql, Boost library (including unit testing) infrastructure, bash, various networking tools and utilities, perl, python, Dbus (linux message bus), Oracle 10g.
CITRIX SYSTEMS, Ft. Lauderdale, FL Nov 2010 – Feb 2011
Member of R&D XenApp Team
ICA Engine / Fujitsu
Troubleshooting and fixing ICA bugs for various Windows client operating systems.
Understanding ICA engine and fixing bugs for Fujitsu.
ICA Regression Suite for post-CVT earliest issue resolutions.
Windows 7, Windows 2008 Server R2, Windbg, VC++, Visual Studio 2008, Vantive CRM, Perforce (version control), CDF Tracer, XenCenter, SkyNet VM environment, Citrix Merchandising Server.
CREDIT SUISSE, New York City, NY July 2010 – Nov 2010
Member of Equity Research Team
FIX protocol implementation for NASDAQ trade reporting
Upgrade CSFB post trade event reporting to NASDAQ to FIX protocol. This is a high volume database transaction environment (estimated 1 million daily trade execution and reporting to NASDAQ), implemented with Berkley DB and three Oracle databases, for high availability, traceability and consistency.
Design and implement NASDAQ FIX (version 2010) protocol specification, using C++, to respond to post-trade events from message queuing system (TIBCO smart-sockets).
Understand NASDAQ version 2010 of FIX protocol and map CTCI fields to FIX tags.
Identify CTCI message creation modules from business logic and message generation, to find a proper place for FIX message creation.
Implement post-trade event handler for FIX execution message (#8).
Test FIX execution message creation with NASDAQ post-trade event listener simulator.
Windows XP, Suse/Linux server, TIBCO Smartsockets, GNU C++ compiler and linker, ACE (Adaptive Communication Environment) C++ framework, Oracle 10g, Berkley DB (In-memory database caching), CVS version control system, XMing X window system for Win XP, Valgrind for code profiling.
CITRIX SYSTEMS, Ft. Lauderdale, FL Oct 2009 – June 2010
Member of LCM Team
IMA & XenApp life cycle management for Windows 2008 & various Windows Clients
Port Citrix IMA & XenApp client/server components for Windows 2008 and various Windows client operating systems.
Splitting a single source tree into separate source trees for easier feature-enhancement and bug-fixing, applying feature-enhancements and bug-fixes to target the release platforms, updating build scripts/environment.
Understanding how source code is organized, and various inter-dependencies in source tree.
Isolating IMA and XenApp components to create new code base for target platforms.
Using perforce commands to create new source trees.
Using SkyNet VM environment to verify pre-split and post-feature-enhancement component behavior.
Windows 7, Windows Server 2003 & 2008, CLR 3.5, SkyNet VM environment, C++, C#, Visual Studio 2008, Vantive (for Citrix Problem Reporting), Perforce (version control).
Member of development Team
XenApp Single Sign-On & Service Role Installer / Manager
XenApp Service Role Installer/Manager handles the complexity of XenApp Service software installation/uninstalltion & configuration.
Developing and testing (in Skynet VM environment) for localization and bug-fixing various installation features using Citrix Extensible Meta Installer (CXMI) framework.
Understanding Wix xml used in the Server Role Installer/Manager (SRI/SRM), to debug and solve CPRs for the upcoming release.
Isolating localizable strings in SRI/SRM and Single Sign-On modules, and modify code accordingly.
Unit testing proposed solutions to CPRs, using the Virtual Machines in SkyNet environment, before submission for the testers.
Windows 7, Windows Server 2008 R2, CLR 3.5, SkyNet VM environment, C#, Visual Studio 2008, WiX 3.0, Orca (MSI browser/editor), Windows Presentation Foundation (WPF).
VERIZON DATA SERVICES, Tampa, FL Oct 2008 – Oct 2009
Member of development and maintenance Team
Verizon’s FiOS (fiber optic services) include voice (telephone), data (internet) & TV services. iVAPP is a provisioning system for these services. iVAPP controller is the central management system, that manages various aspects of information, inventory and activation.
Developing various FiOS enhancement requirements. Maintaining existing workflow specially related to provisioning data.
Understanding current business logic in the IVAPP controller module, and how to extend the logic to fit in new functionalities.
Server-side C++/Linux code development for new web based application, as current application extension.
Using Pro*C pre-compiler for new data query programs.
User acceptance and regression testing new code.
Production support, by analyzing/diagnosing order fall-outs, and determining ad-hoc or code modification.
Implementing ad-hoc solution for fall-out orders.
Participating in cross-team meetings to discuss and analyze priority-order issues.
Modified (Conscript files) 'cons' build system for development of new feature and extension.
RedHat Linux, bash, Perl Scripts, C++ (GNU compiler collection), various in-house (perl & python based) build utilities, IBM MQSeries (XML messaging), DB2, Pro*C pre-compiler and various collaboration tools.
BECKMAN COULTER INC., Miami, FL Feb 2005 – Oct 2008
Member of development and subsystem Lead for WorkstationTeam
Universal System Management
Beckman Coulter Inc. designs, develops and tests embedded, workstation and GUI applications for automated clinical diagnostics and slide preparation machines.
Universal System Management is a set of workstation (workflow automation logical layer) applications for Barracuda CDR90 that has capabilities to automatically process clinical tests with quality norms set by Beckman Coulter and FDA quality specifications.
The workstation application suite is now expanded to accommodate Slide-maker / Slide-stainer instrument, and common embedded transport mechanism, to plug in multiple instruments of various types in a single instrument complex.
The workstation application uses homegrown component architecture for the server-side that delivers specific requirements to communicate with diverse systems running inside the server-side application suite.
Using BCI workstation framework, subsystem design/coding guidelines, to add functionalities, services & subsystems to the existing benchmarked code base to accomplish software release goals at various stages.
Visual UML modeling with Rational Rose, generate code, write unit & integration tests targeted for specific features.
Design & document Use care realization, high-level design, reconciliation & VC++ Code Generation using Rational Rose UML modeler.
Developing high-quality Visual C++ code with heavy use of STL, platform-independent wrapper classes for Win32 platform SDK, in-house message-passing framework and design patterns.
Developing DCOM/ATL server applications in C++ for external clients (C# exercisers [console applications for integration testing], .Net User Interface & Data manager) to access various services in the workstation application suite.
Developing build-scripts for new features as dynamic services in the workstation application suite.
Developing integration tests, using perl-based ABT scripts, that uses various feature exercisers.
Developing perl-scripts for integration test data generation.
Developing C# exercisers as independent utilities to be used in integration tests.
Developing unit tests (based on cppUnit) for service components, following Agile methodology.
Analyzing defects reported by V&V testers, and bug fixing, to comply with in-house quality requirement and FDA quality norms.
Peer review features and analyze defect reports.
Support software hotline for Barracuda laboratory to help technicians document defects found during testing and verification of software releases.
Automation Base Template (ABT) scripts are a collection of perl scripts intended for: (a) MS-SQL Express 2005 database operations from perl scripts. Added features to programmatically backup/restore, prepping a test database from a set of file data targeting a given test scenario.
(b) perl interface to Rational Clearcase, to be able to create a review package based on file diffs
Functional and integration testing, subsystem features are published as perl-callable modules (based on XS/C mechanism). Developed XS/C entry points for all the features added to existing/new workstation subsystem.
Developed perl-based sample data generation utility, based on statistical distribution model and a set of characterization parameters
Windows XP, Rational Rose, ClearCase, ClearQuest, cygwin tools (for Windows), MS Visual Studio for .NET, C#, Visual C++(VC various in-house (perl & python based) build utilities and MS-SQL Express 2005(w/ T-SQL).
US ALLIANCE - FCU, Rye, NY June 2004 – Feb 2005
Member of the design team
Member Portfolio System
MPS is a browser based application build with C# on .NET architecture. MPS is a part of the complete FCU Member Management application; the other part being XP2 (developed by XP Systems), responsible for cash, stock & loan trading. MPS interacts with XP2, to synchronize the cash, stock & loan details using Web Services maintained on XP2.
Participated in the activities to study & abstract different parts of MPS based on the SRS. Study & define the Host Interface Processes as Web Services based on MPS requirement and the Host System (XP2). Interact with the client (US Alliance) to finalize design for a subset of processes.
Windows 2000, MS Visio, MS Visual Studio for .NET, C#, DB2.