C++ Software Developer Resume
IL
SUMMARY:
- C /C++ software developer with 7 plus years of Software development life cycle experience including requirements, definition, features and functionality, design and development, unit testing, verification, validation and enhancements.
- Strong expertise in C, C++ (including C++11 and C++14), Python and SQL.
- Experience in various aspects of system architecture, software design, development, implementation and validation.
- Strong experience in creating Test Plans and Test procedures, driving Test Strategies and tools identification, Managing Test design through cross functional teams and creating Test Summary Reports.
- Served as Single Point of Responsibility for Software Development Life Cycle with accountability of requirement analysis, architectural design, technical design, creating POC, preparing/reviewing estimation, coding, holding technical discussion, implementation, defect fixing and tracking, maintenance and application enhancement.
- Experienced in operational systems incident management, root cause analysis and application/product performance management.
- Experience in Development of Project Plan, Software Design Document and Validation Plan Worked on Client/Server, SQL Server and Web based applications with strong business understanding and knowledge of Order management systems.
- Experienced with Data flow diagrams, Data dictionary, Database normalization theory techniques, Entity relation modeling and design techniques. Sound knowledge of porting code on specific platform, memory and performance estimation, memory management using linker command files.
- 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.
- Experienced with full software development life - cycle, architecting scalable platforms, object-oriented programming, database maintenance and agile methodologies.
- Experience in using the C++ Standard Template Library (STL), BOOST Library.
- Experience in implementing and using Data Structures and Algorithms.
- Familiar with embedded diagnostic and development tools.
- Good experience with JENKINS and other build environment tools.
- Involved in code reviews and test cases reviews.
- Experience in using C and Assembly language to debug and update firmware versions.
- Experience in working Automated Testing methods.
- Strong verbal and written communication skills used to successfully develop presentations, write reports and draft correspondence.
TECHNICAL SKILLS:
Programming Languages: C, C++, Python, Java,Golang, Shell Scripting
Operating Systems: Linux, Sun Solaris, Windows.
Database Systems: MySQL, MS Access, SQL server, Oracle, Cassandra.
ORM Framework: Django
Methodologies: Agile, RAD, Waterfall, Test Driven and Scrum Models
Web Services: SOAP, RESTful, WSDL.
IDE Tools: Eclipse IDE, Net Beans IDE, Visual Studio, Can, Canoe, Ethernet
Application Software: Microsoft Word, Excel, PowerPoint, Outlook
Continuous Integration: Jenkins, Quick Build, Bamboo, CI/CD Tools
Frameworks/ Tools: Boost, Apache Active MQ, ANT, Gradle, Maven, JAM, Make, cmakeBazel, gdb, dbx, pdb, link, cppCheck, Covertiy, gprof, valgrind, Jenkins, git, svn
PROFESSIONAL EXPERIENCE:
Confidential, IL
C++ Software Developer
Responsibilities:
- Analysis of the Functional Specifications and Business Requirements.
- Prepare Design and Development Deliverables.
- Develop and Execute the Module Test Cases on Unit and Integration Testing environments.
- Peer Review of the Design and Source Code in C, C++, Embedded C.
- Proficient in QA processes, test strategies and experience in testing documents like Test plan, test procedures and Test Cases
- Developing the CAN libraries to monitor internal vehicle variables on the field.
- Collaborated with the engineering team members to define and develop new products.
- Strong expertise using the simulations tools like Canoe, Cadet, Vbench, Ethernet.
- Used Python scripts to generate various reports like OATS, P&L, transaction history, user privileges, limit rules and commission schedule reports.
- Used GIT/Git Hub and SVN for source code control.
- Followed Agile and Scrum Methodologies Application Programming Interface (API), written in C++ and C#.
- Fixing the bugs according to the requirements.
- Developed Micro services using Golanguage and developed corresponding test cases.
- Testing the machine equipment’s by using the ECM (Electronic control Machine or unit).
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- Demonstrated solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
- Analyzing, designing and implementing change requests for the C/C++
- Prepared and installed solutions by determining and designing system specifications, standards, and programming in Desktop Framework
- Followed Agile Methodologies.
Environment : C/C++, QT/QML, Linux, Golang,Canoe, Cadet,Kafka, Github
Confidential, NJ
Sr. C++ Software Developer
Responsibilities:
- Analysis of the Functional Specifications and Business Requirements.
- Prepare Design and Development Deliverables.
- Work on the Low Level and High-level Design Documents.
- Rewritten legacy libraries written in Fortran into high performant multi-threaded C++.
- Developed gSOAP C++ webservices with in process caching techniques for high performance.
- Design and develop solutions using C, C++, Multi-Threaded, Shell Scripting.
- Developed Oracle SQL queries, stored procedures for Database Activities. Worked on DDL and DML statements including design of the tables.
- Peer reviews of the Design and Source Code (C, C++, and Shell Scripts).
- Built rpm packages for deployment.
- Integrated with Jenkins, migrated repo from svn to git along with history.
- Develop and Execute the Module Test Cases on Unit and Integration Testing environments.
- Support System Testing, Acceptance (UAT) Testing and Production changes.
- Debugging and Troubleshooting production issues.
- Developed CAN libraries to monitor internal vehicle variables on the field.
- Collaborated with engineering team members to define and develop new products. Developed/enhanced as part of team to compute commission calculations based on commission rules and generate pdf reports.
- Developed various reports in Python to connect to databases and generate csv, fixed field length reports
- Developed various monitoring alert using Python to monitor logs for application errors.
Environment: C/C++, Python, Kafka,Shell Scripts, SQL, Qt/QML, LINUX.
Confidential, TX
Sr. C++ Software Developer
Responsibilities:
- Held meetings with vendors and management to outline new business requirements and translate them into technical specifications and tasks.
- Designed, developed, and tested software applications meeting deadlines and budgets.
- Specified, prototyped, developed and tested an object-oriented, multiplatform C++ framework containing support to: data structures, common algorithms sockets, threading.
- Fixed bugs in the order management system.
- Developed highly efficient algorithms in C++ through both pair-programming and independent work. The algorithms improved inventory management benchmarks 18 percent.
- Analyzed code to identify and improve performance bottlenecks and contingencies with shared resources. Streamlining the code was instrumental in reducing support costs.
- Significantly contributed to the calculation engine, which was based on evaluation of rules and rule groups. Used C/C++ interface to retrieve/update info from/to the DB.
- Developed/enhanced as part of team to compute commission calculations based on commission rules and generate pdf reports.
- Modified C++ programs to support compliance rule automation for many compliance rules for client accounts for both pre-and post-trade compliance purposes and manage leverage using many metrics like industry exposure, security type, long/short positions, currency / securities / options / futures, credit ratings etc.
- Implementation of name Resolution using WINS and DNS in TCP/IP environment.
- Wrote various SQL stored procedures to compute several metrics like realized/unrealized gain/loss, forex rate effect etc. and other data manipulation.
- Used Python scripts to generate various reports like OATS, P&L, transaction history, user privileges, limit rules and commission schedule reports.
- Used SVN and git/GitHub for source code control.
- Followed Agile and Scrum Methodologies
Environment: C, C++, UNIX, Java, Oracle, DB2
Confidential, IL
Sr. C++ Software Engineer
Responsibilities:
- Designed, implemented and maintained a multithreaded server that received and processed acknowledgement messages from downstream applications regarding event data pushes using C++, STL, multithreading, shell scripting and UNIX.
- Involved in Software designing and development process in socket programming.
- Participated in the development of a multithreaded publish/subscribe process which consisted of several subscriptions and push servers using C++, STL, multithreading, shell scripting and UNIX.
- Used android's WIFI API to find and connect with PC in same network.
- Coordinating with vendor to determine RCA on few occasions; by facilitating veritas and Solaris explorers, core dumps, RHEL SOS reports.
- Experience in writing Shell scripts using Csh, bash, and Perl scripting for the process automation of databases, applications, backup and scheduling to reduce both human intervention and man hours.
- Implemented additional rules and logic to provide indicative and corporate actions data to new subscribers by extracting all the required information from data base, generating and pushing messages using C++ and Rogue Wave.
- Implemented a SOAP webservice client program which was used extensively to process and stored in the data base corporate actions data from various vendor feeds using C++ and Rogue Wave.
- Designed and developed a multithreaded process that generated breaks on income events and notified the users when underlying indicative data changed using C++, STL and multithreading.
- Modified existing multithreaded server infrastructure to push additional indicative information to downstream subscribers.
- Developed and tested a client that handled the parsing of the municipal bonds feed file and created business objects which were streamed to various servers for data analysis using C++ and STL.
- Created an automated generic archiving utility written in raw DB2 CLI which was used to archive rows from different tables depending on the flag.
- Implemented and trained staff in the use of platinum DB2 tools, candle Mointer for db2, and db2 tuning techniques.
- Created and maintained DDL for all DB2 databases.
- Performed data modelling and implemented database design to support the project planning process.
- Developed secured data which is encrypted on integrating data cryptography into protocol.
- Developed reusable C# libraries.
- Familiar with various design and architectural patterns.
- Leveraged my knowledge of concurrency and design patterns.
- Created BASH shell scripts to automate cron jobs and system maintenance. Scheduled cron jobs for job automation.
- Scripting and task automation using Corntab, Bash, Korn shell scripting.
- Developed UI code by using HTML, JSTL, JSP and JQuery for the presentation layer along with Java Script for client-side validation.
- Used Java Servlets, RESTful, and SOAP for client server communications. And used XML and JSON stream parsers.
- Developed c++ math library using SDK Visual Studio Extension for creating Applications.
- Application Programming Interface (API), written in C++ and C#
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- Demonstrated solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
- Prepared and installed solutions by determining and designing system specifications, standards, and programming in Desktop Framework.
Confidential
Software Engineer
Responsibilities:
- Analyzing the customer specifications to develop the software requirements.
- Performing software development activities, which includes Requirement gathering, Design conceptualization, and Coding.
- C++ coding of Models (IVR Programs) in a 3layer (Frame work, Attributes, Models) architecture application.
- Singleton design pattern as used in the framework.
- Send/receive XML request and response through http protocol.
- Used Curl (Command line URL) concept to send and receive http request.
- This server provides a XML response for the XML request which acts as a dummy server.
- Developed a C++ application by creating a class for each application. Each application uses the functionalities of framework Preparing program, unit test specifications and system test plan for the components
- Unit testing the programs for correctness against the requirements and completeness using test coverage analyzer.
- Managing the configuration and controlling the code version using subversion
- Ensuring the compliance to the development processes and methods.
- Ensuring the deliveries within defined time, cost and quality.
- Analyzing the issue raised either during testing campaigns or in-service usage.
- Providing technical support to new team members.
- Worked with users from requirement gathering to the final delivery of the product, support and rollout.
- Analyzed, Designed and modified multithreaded applications to support guest loyalty program, seapass cards and revenue management.
- Enhanced C++ code to manage revenue information onboard for both crew and guests.
- Used STL components like containers, iterators, function objects and algorithms in applications.
- Used sockets for communication with vendor API for POS systems
- Used SVN for source code control.
- Modified & tested scalable, multithreaded, high throughput C++ programs.
- Modified existing multithreaded server infrastructure to push additional indicative information to downstream subscribers.
- Implemented additional validation logic for a rule engine server that checked for logical inconsistencies in indicative data and reported them in a user workflow using C++, STL and multithreading.
- Optimized design and code for high performance and fixed various bugs.
- Used various data structures/design patterns like Observer, Singleton, Facade in software design.
- Used C++ interface/SQL to update/retrieve information from MySQL DB.
- Wrote Python scripts to manage end of day (EOD) tasks
Environment: C, C++, STL, Unix, AIX, Linux, g++, gcc, Python, pdb, Shell Scripting, IBM DB2, Oracle, SVN, event handlers, Observer Pattern, multithreading, thread pools, IPC, gpg encryption, gdb, dbx.