Firmware C++ Developer Resume
NE
PROFESSIONAL SUMMARY:
- Around 5+ years of hands on experience in designing and developing the Real Time embedded client/server and multi - threaded applications using C/C++, Python.
- Experienced with full software development lifecycle, architecting scalable platforms, object oriented programming, database maintenance and agile methodologies .
- Extensive experience in design, development, enhancements and maintenance of the industrial automation applications.
- Experience in implementing the applications under multiple OS platforms using corresponding APIs like Linux internal APIs and win32 APIs .
- Experience working on a wide range of microcontrollers/microprocessors such as 8051, 8086, ARM, PIC on embedded devices.
- Familiar with Wi-Fi, 802.11, LTE and Internet Protocol concepts.
- Worked extensively on multi-threaded codes using embedded RTOS environments.
- Experience with serial communications including RS232, RS485, I2C, SPI and I2S.
- Strong experience in automating system test and production tasks using Shell Scripting and Python.
- Extensive experience using the OOAD and Object Oriented (OO) Model Concepts for development process.
- Sound knowledge of porting code on specific platform, memory and performance estimation, memory management using linker command files.
- Experience in developing and enhancing the windows applications using VC++ and MFC .
- Experience in using the C++ Standard Template Library (STL) .
- Worked on Daemon software devices like APC Smart-UPS’s on windows environment.
- Experience in implementing and using Data Structures and Algorithms.
- Developed C++, SOAP webservices on UNIX and Linux platforms using gsoap.
- Proficient in static analysis tools like cppCheck and Coverity.
- Development experience with XML, JSON, TCP/IP, UDP/IP and multithreaded application using IPC mechanism.
- Experience in writing SQL queries and stored procedures and packages.
- Experience in using IDEs - Eclipse, CLion, Pycharm, Visual Studio, GNAT programming studio and Code Composer Studio.
- Experience in creating UML Design diagrams like sequence and class diagrams.
- Experience in Socket Programming, IPC (Inter Process Communication) mechanisms under different OS/RTOS .
- Very good Knowledge on Unix and Windows based POS.
- Good understanding of SDLC processes, AGILE-SCRUM and waterfall methodologies.
- Expertise with Modeling tools like Matlab/Simulink, Stateflow .
- Worked with Git, SVN and clear case configuration management systems and used tools such as Rally, Review Board, Extra view and Clear Quest.
- Good experience with JENKINS and other build environment tools.
- Experience in using C and Assembly language to debug and update firmware versions.
- Strong analytical and problem-solving skills, always striving for new knowledge. A person with multi-tasking and organizational skills and high ethical standards.
- Excellent communication and interpersonal skills, ability to work independently as well as part of an integrated team.
TECHNICAL SKILLS:
Programming Languages & Scripts: C, C++, Python, Shell.
Operating Systems: Windows NT/2003/XP/Vista, Sun Solaris, IBM AIX, RHEL, UNIX/Linux.
Protocols: TCP/IP, RTP, 802.11 Standards, UDP, CAN, SNMP, RS 232, GMLAN, KWP.
Databases: Oracle, Microsoft SQL Server, IBM DB2, SQLite and MongoDB.
Tools: Visual Studio (2005, 2010 and 2015), emacs, eclipse, UML tools, MS-Office, splunk, Jira, OpenGrok.
Libraries & Frameworks: STL, BDE, IPC, multithreading, sockets, heap allocators, signals/event handling, SOAP webservices, Software Design OOP/OOD, Design Patterns, Google Test, Google Mock, Quick FIX.
Version Controls: GIT/github, SVN, and TFS.
Build: Jenkins, cppCheck, Coverity.
Simulation Tools: Verifix, Labview, Cadence, Pspice, Hspice, Synopsys, Xilinx, dSPACE HIL.
PROFESSIONAL EXPERIENCE:
Confidential, NE
Firmware C++ Developer
Responsibilities:
- Developing, testing and deploying a Election Software application on ElectionVote machine for getting settled positions from the database. Utilized C++, STL and multi-threading to achieve optimal design efficiency.
- Enhancing new features for an existing application using C++ on Yocto linux.
- Used SSH protocol to communicate with products and used SCP to copy files to required products and execute it.
- Developing event driven services in C++ for communicating with host and receiving files or messages or alerts from external interfaces like servers.
- Used Web socket programming for communicating with the hardware internal devices.
- Developing an application according to the precinct requirements using C++11 and C++14 templates and STL Containers, Vectors, Pointers and Threads.
- Utilized various object oriented techniques and implemented new logic for processing JSON objects which is integrated with C++ to communicate user friendly.
- Enhanced the exposure reports that explain in detail the exposure involved at various levels in a trade (security, counterparty, currency etc.) Utilized C++. Git was used as the Version Control tool.
- Enhanced the existing cryptographic libraries for keeping all required keys and data in a memory using decryption and encryption methodologies to use that data for signing the signatures.
Environment: C, C++, STL, OOPS, Yocto Linux, GCC Compiler and, Boost C++ Library, QT Frameworks.
Confidential, TX
POS C++ Developer
Responsibilities:
- Designed, developed, tested and deployed a POS application for getting settled positions from the database. Utilized C++, BDE, STL, and thread pool to achieve optimal design efficiency.
- Designed and developed an application to mark the securities with market prices to evaluate the collateral margin exposure. Utilized C++ templates, OO Design Patterns.
- Developed new locate modules (to match short sell trades) using C++, Oracle on Windows.
- Worked in developing and enhancing the windows applications using C++ and MFC.
- Developed a Real-Time application that transmits the trading activities to settlement systems using messages queues, to back office vendors which are eventually sent to DTCC for clearance.
- Utilized C++, STL containers, BOOST and algorithms for achieving an abstracted design. Designed and coded a settlement reconciler that generates a list of unsettled and partially settled trades to downstream settlement systems for reconciliation.
- Enhanced the Tax calculations for an application using C++, Oracle on Windows.
- Used Test driven approach for developing the application and Implemented the unit tests using Unit test framework.
- Enhanced the exposure reports that explain in detail the exposure involved at various levels in a trade (security, counterparty, currency etc.) Utilized C++ and Oracle. Team Foundation server was used as the Source Control tool.
- Developed SOAP services in C++ for communicating with host and receiving files or messages or alerts from external interfaces like servers.
- Responsible for providing technology solutions to the equity business globally including design, development, maintenance, and user training of all vended and internally developed technologies.
- Designed, developed and implemented new classes and objects in C++ for handling various trade and clearing events.
- Utilized various object oriented techniques and implemented new logic for processing or monitoring the events or alerts using PowerShell script.
- Designed and Developed PowerShell Scripts to monitors the events, alerts and sending to host servers database.
- Designed and Developed batch Scripts for installing the packages and to execute some applications at regular time intervals.
- Designed, developed, and deployed new processes for sending trading events to downstream RIS applications.
- Developed native UI using C++ with event handlers and fetching data using SOAP interfaces.
- Involved in Regression, QA and User Acceptance testing and providing logs and analysing the logs provides hot fixes to the issues.
- Involved in production support and providing hot fixes to the production issues.
Environment: C, C++, MQ, Windows, Linux, STL, BOOST, Thread Pool, TCP/IP, SOAP services, caching data and IPC, Visual Studio.
Confidential, NJ
C++ Developer
Responsibilities:
- Designed, developed, tested and deployed a position loader for loading settled positions into the database. Utilized C++, BDE, STL, and thread pool to achieve optimal design efficiency.
- Designed and developed a Mark-to-Market application to mark the securities with market prices to evaluate the collateral margin exposure. Utilized C++ templates, OO Design Patterns. Developed new locate modules (to match short sell trades) using C++, Oracle on Solaris and Linux.
- Created new compliance reports using Python reports include Limit Manager Breach History, positions borrowed in excess of orders, US Tag MSI reports, Finra OATS and other reports.
- Developed a Real-Time application that transmits the trading activities to settlement systems using FIX, to back office vendors which are eventually sent to DTCC for clearance. Utilized C++, STL containers, BOOST and algorithms for achieving an abstracted design. Designed and coded a settlement reconciler that generates a list of unsettled and partially settled trades to downstream settlement systems for reconciliation.
- Designed and developed new C++ modules for sending open contracts to Equilend for reaching price agreement with counterparties.
- Designed and developed C++ programs for borrowing shares from fully Paid customer positions.
- Python Scripts were designed and developed for Data Import/Export and Conversions.
- Used Test driven approach for developing the application and Implemented the unit tests using Python Unit test framework.
- Designed a Web Interfaces for test application using C++ that validates the results in web version.
- Used Docker Containers for making executable packages and used Virtual Machines for abstraction of hardware turning from one server to many servers.
- Enhanced the exposure reports that explain in detail the exposure involved at various levels in a trade (security, counterparty, currency etc.) Utilized C++ and Oracle. git was used as the Source Control tool.
- Design/Implementation of pricing module (average swaps, basis swaps, swaptions, and caps/floors on commodity futures) in C++ .
- Developed C++ Trade Capture and Processing application which is a single unified platform for booking and tracking Credit derivatives like CDSI, Single Name CDS, and Index Tranches, etc. using network/socket programming and multithreading concepts.
- RabbitMQ and workers architecture for resource-consuming processing, scalability, responsive/non-blocking requests, high-load protection and to utilize sharding WebSockets for real-time server-data analysis (websocket connection from agent/daemon installed on customer server through decentralized swarm of data collecting APIs, till user interface in his web browser) and micro-service architecture.
- Responsible for providing technology solutions to the credit risk management business (specifically commodity derivatives and FX options).
- Developed SOAP services in C++ for booking trades for derivative instruments and receiving orders from external interfaces like SEF, ICELINK.
- Responsible for providing technology solutions to the equity business globally including design, development, maintenance, and user training of all vended and internally developed technologies.
- Developed asynchronous event model for processing and tracking transactions using RabbitMQ.
- Designed, developed and implemented new classes and objects in C++ for handling various trade and clearing events.
- Utilized various object oriented techniques and implemented new logic for processing ICELINK events and CLEARING messages.
- Designed, developed, and deployed new processes for sending trading events to downstream RISK applications.
- Developed new reports using Python to identify the sales margin overrides.
- Implemented code in Python to retrieve and manipulate data.
- Developed native UI using JavaScript with event handlers and fetching data using SOAP interfaces.
- Involved in production support and providing hot fixes to the production issues.
Environment: C, C++, Python, FIX protocol, MQ, Solaris, Linux, STL, BOOST, Thread Pool, TCP/IP, SOAP services, caching data and IPC.
Confidential
Software Engineer
Responsibilities:
- Created and deployed Unix shell scripts (KORN) to run the periodical jobs for claims engine, fi-nancial payments, reference data maintenance (rules engine), decision support systems (DSS), job scheduling using Autosys, Autosys database maintenance.
- Lead developer responsibilities on DRA (deficit reduction act) module development - worked on reference, claims writing programs in Pro*C, KSH shell scripts on UNIX, XML parsing, XSD changes.
- Technical lead responsibilities on Pro-DUR (Prospective - Drug Utilization Review) policies and new reports - developed in Pro*C, KSH shell scripts, Autosys jobs on Solaris UNIX, Source code control System (SCCS).
- Create and modify Python, UNIX shell scripts that load data from other systems into schemas for operational reporting.
- Facilitated integration and user acceptance testing data setup using .NET UI and SOAP servers - configured claims/benefits data for testing various payers.
- Coding and implementation of routing software for handling customer queries and re-routing to appropriate divisions. The customer’s calls are automatically answered and place into a holding the queue until an agent becomes available.
- Developed tools like LINUX IDE (Eclipse) for C++, C, UNIX Shell Scripting, Clear Case, Clear quest, QNX, Eclipse, VNC Viewer, XML Parsing etc.
- Involved in designing and developing the functionality and features using C++.
- Involved in the code and requirement reviews of work products developed by team members.
- Experience with the Unix based POS(Point to scale) used to code for accounting.
- Data base Enhancements for new customers and departments/divisions.
- Writing stored procedures in SQL Server and integrated into the application to access the customer's calls, department's data from databases and store the customer's calls, department's data into database.
- Used QT Creator tool to develop visualization devices using QML language which is integrated with C++ libraries.
- Preparation of Unit test cases and execution of test cases.
- Porting of application from Windows to Linux.
- Developed and executed User Acceptance Testing portion of test plan.
- Developed devices using RTL abstraction which flows the signals from registers to logical operations.
- Used RTL for placement and routing tools to create physical layout.
- Used DDS ( Data Distribution service ) for communicating objects between the machines.
- Worked on creating various documents that include Use Cases, Class Diagrams, Sequence Diagrams and Activity Diagrams.
- Developed, coded, tested, debugged and deployed webservices, MQ for the input and output forms on the webservices.
- Review of design document, code and test case documents
Environment: C, C++, STL, Python, QT Frame work, CVS, OOPS, DBX, Linux, GCC Compiler and Perl Scripting, Windows Services, Perl Scripting, Boost C++ Library.