0% found this document useful (0 votes)
15 views8 pages

Ritesh Sharma C++ Developeru

Uploaded by

naveen482313
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views8 pages

Ritesh Sharma C++ Developeru

Uploaded by

naveen482313
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

Ritesh Sharma

Email: [email protected]
Mobile: +1 609-510-2678

Experience Summary:
 Senior Developer/Tech Lead with about 19+ years of experience in the entire system life cycle, including
Management, System Analysis, Design, Implementation and Maintenance of various applications.
 Expertise in Visual C++, Microsoft Foundation Classes (MFC), COM Components , Win32 API, Modern C++
(C++11/14/17) with a strong command of object-oriented programming (OOP) principles, multithreading,
and concurrent programming for high-performance systems.
 Proven track record of implementing robust algorithms and leveraging the Standard Template Library (STL)
to develop efficient, reusable, and scalable code.
 Hands-on experience with design pattern implementation to create maintainable and extensible software
architectures.
 Extensive knowledge of memory management, pointers, and design implementation C++.
 Strong debugging and optimization skills, with a focus on identifying and resolving performance
bottlenecks.
 Proficient in cross-platform development for Windows, Linux, and UNIX environments, ensuring seamless
compatibility.
 Experienced in collaborating with onshore and offshore teams, mentoring junior developers, and applying
agile methodologies to streamline project execution.
 Adept at troubleshooting complex systems, performing root cause analysis, and delivering enhancements
to existing C++ applications.
 Skilled in designing and building multithreaded systems, optimizing thread safety, and ensuring consistent
performance under concurrent workloads.
 Strong understanding of RDBMS, with experience in designing efficient database-driven applications using
SQL and PL/SQL
 Successful completed various projects and applications with underline technology C++, VC++, XML, Sound
knowledge OOPS concept, Win32 api, multithreading, STL, design patterns and RDBMS
 Write efficient, reusable, and reliable C++ code, ensuring the scalability.
 Reduced support costs 22 percent by creating multiple of enhancements for existing C++ apps running on
Windows and UNIX platforms. Tactics included troubleshooting, root cause analysis, bug fixing and
decreasing the codebase 25 percent.
 Responsible for project status, risks, and issues to stakeholders as well as senior management. Gathered
and analysed requirements to ensure project alignment with business objectives
 Experience as a Tech Lead using agile methodology, which includes planning and assessment,
requirements definition, features and functionality design and development, coding, testing, QA,
implementation, product and infrastructure enhancements and maintenance.
 Acted as a liaison between onshore, offshore and operations team, ensuring clear communication and
alignment of IT initiatives with business needs. Presented IT performance reports and strategic plans to
senior management.
 Worked as individual contributor and manage the delivery single handedly from inception to completion
involving technologies like VC++, Win32,C/C++, PL/SQL, Rust ensuring on-time and within-budget delivery.
Applied agile methodologies to improve project outcomes and team efficiency.
 Successfully completed Migration of legacy C++ application Java which includes working on code reverse
engineering.
Page 1 of 8
Educational Qualification:
Bachelor of Engineering in Information Technology from Govt. Engineering College Bhopal, M.P (affiliated to
RGPV University).Pass-out year July 2005

Core Technical Skills:


 Programming Languages: C++, Python, PL/SQL, VC++, Core java
 C++ Standards: C++98, C++03, C++11, C++14, C++17
 Python Usage: Scripting for debugging, defect fixes, automation, and testing
 Visual C++: Windows application development, MFC, COM, ATL, WIN32 API
 Agile Tools: JIRA, Confluence
 Multithreading: Thread management, Mutexes, Condition Variables, Thread Pools, events , critical
sections, semaphores.
 Libraries/Frameworks: STL, Boost, MFC, win32 api
 Design Patterns: Factory, Singleton, Observer, Abstract Factor etc.
 Memory Management: Smart Pointers (unique_ptr, shared_ptr, weak_ptr), Manual Memory
Management, Memory profiler.
 Testing & Debugging Tools: Google Test, GDB, Python-based tools
 Version Control: Git, SVN
 Continuous Integration/Continuous Deployment (CI/CD): Jenkins, GitLab CI
 Database: SQL, PL/SQL, RDBMS
 Platforms: Windows, Linux, UNIX
 Development Tools: Visual Studio, Eclipse, Makefiles

Certifications Completed:
1. AWS cloud Practitioner
2. AWS cloud Solution Architect Associate

Project Experience:
TransAmerica, New York Jan’20 - Till Date
Role: Tech Lead
Project: TransAmerica – Statement Services and other applications

Description: The Transamerica Corporation is an American holding company for various life insurance companies
and investment firms operating primarily in the United States, offering life and supplemental health insurance,
investments, and retirement services.
Transamerica statements project is to generate various financial statements for Employer and participant level on
monthly, quarterly, yearly and Daily basis.
There are around 30+ C++ legacy applications which require continuous support, maintenance and enhancement
as per the requirement.

Responsibilities:
 Developed robust and scalable desktop applications using Visual C++ and Win32 API for enterprise-level
solutions.

Page 2 of 8
 Designed and implemented graphical user interfaces (GUIs) with rich, interactive features using MFC and
custom Win32 controls. Created efficient event-driven architectures with message loops and callback
functions, ensuring seamless application responsiveness
 Designed and developed complex Windows-based desktop applications using Visual C++ with a strong
emphasis on scalability, performance, and maintainability.
 Created modular and reusable components by leveraging dynamic link libraries (DLLs), ensuring easier
maintenance and extensibility of applications.
 Delivered end-to-end solutions by effectively combining VC++, MFC, and Win32 API to develop multi-
functional enterprise applications.
 Proficient in integrating third-party libraries and SDKs into VC++ projects, enhancing system capabilities with
minimal overhead.
 Act as a SME for portfolio of applications and as all the C++ application’s setup has dependency matrix. It also
has several library reliance and local configuration setup to be done. It also needs AMQ’s (Active Messaging
Queue’s) to run locally. So, despite no detailed documentations provided required support on this application
and implemented new enhancements.
 Successfully delivered around 50+ enhancement and changes which includes the multiple applications and
technologies which involves C/C++, SQL/PL , Rust, python
 Successfully automated bug identification and defect fixes by developing Python scripts, reducing debugging
time by 30% and increasing team productivity.
 Enhanced system performance by identifying and resolving memory leaks using debugging tools and manual
optimizations.
 Refactored and modernized legacy C++ applications, integrating C++11/14/17 features (e.g., smart pointers,
move semantics, lambda functions) and streamlining the codebase.
 Led development of complex Windows desktop applications using Visual C++ , Win32, MFC, delivering feature-
rich solutions tailored to end-user requirements.
 Designed and implemented multithreaded systems, ensuring thread safety and efficient resource utilization
with techniques like mutexes, condition variables, and thread pooling.
 Utilized Python scripts for testing, data validation, and performance analysis, accelerating defect detection and
resolution cycles.
 Improved project outcomes by implementing Agile methodologies, leveraging tools like JIRA for task
management and team collaboration.
 Reduced support costs by 22% through enhancements and bug fixes in legacy C++ applications, using
automated tools and Python scripts for performance monitoring.
 Applied design patterns such as Factory, Singleton, and Observer to deliver flexible, scalable, and maintainable
software solutions.
 Managed the Successful migration legacy C++ application to Java.

Environment: VC++, C++, PL/SQL, Rust, python, AQT, Git, Visual Studio, MFC, Jira, Agile, Core java

Credit Suisse Mar’18 – Jan’20


Role: Technical Lead
Project: Service Analytics

Page 3 of 8
Description: Credit Suisse’s Investment Banking & Capital Markets division offers a broad range of investment
banking products and services which include advisory services related to M&A, divestitures, and takeover defence
strategies, as well as debt and equity offerings
The project is an “IT Operations Analytics Tool” for Application Maintenance & Production Support Services or
Managed services. It originates with an objective of the below Mission statement to unearth all the improvement
areas and mitigate all the challenges a typical Managed Service engagement would have. As part of our alignment
towards addressing the key expectations and deliverables of Managed services engagement, by providing an
engagement level view point for Managed Services programs, a tool with a 3 I’s - Incident, Information &
Infrastructure.

Responsibilities: Add points of project management


 Developed feature-rich applications using VC++ ,Microsoft Foundation Classes (MFC), WIN32 leveraging
libraries for dialogs, controls, and data management.
 Customized MFC frameworks for dynamic layouts, advanced menus, toolbars, and context-sensitive help.
 Enhanced application usability by integrating drag-and-drop functionality, clipboard handling, and
advanced file I/O operations.
 Involved in all phases of the life cycle of the project including requirement study, design, development,
and deployment and testing.
 Involved in Architecture Designing and to provide optimum solution
 Work with a substantial C++ codebase, requiring an inquiring and tenacious approach to development and
maintenance.
 Implement code for interfacing with the service now incident System DB and to port to other system to
generate the incident reports, which is pulled by tableau to generate various reports.
 Experience to understand existing code base for existing asset classes and be able to enhance them within
the existing infrastructure and coding conventions.
 Improve System Performance by identifying code and procedural inefficiencies
 Supported multiple batch jobs which are related to various C++ application. These batch jobs run on scheduled
time (typically late US hours) and may be following daily/weekly/monthly schedule (However most common
runs daily). They take some run time inputs like balance at the end of date OR market values (something like
fund values) at the closure etc.
 Responsible for the enhancement of current applications, which includes design , development , testing ,
development of changes.

Environment: VC++, C++, PL/SQL, AQT, Git, Visual Studio, Tableau, SVN

Pepsi Co Apr’17 – Mar’18


Role: Lead Developer
Client: Pepsi Co - USA
Project: Pepsi Smarter Delivery

Description: Pepsi Express Delivery handheld (HHC) performs delivery route accounting, ordering, invoicing,
and truck inventory management for Pepsi Cooperation. The express delivery application is developed in C++
which needs to migrated to iOS application.

Responsibilities:

Page 4 of 8
 Developed feature-rich applications using Microsoft Foundation Classes (MFC), leveraging libraries for dialogs,
controls, and data management.
 Customized MFC frameworks for dynamic layouts, advanced menus, toolbars, and context-sensitive help.
 Enhanced application usability by integrating drag-and-drop functionality, clipboard handling, and
advanced file I/O operations.
 Reverse Engineering -Design Documentation of the existing application.
 Proficient in core Win32 programming, including process/thread management, window creation, file handling,
and memory management.
 Built UI features using Win32 components for rendering and drawing in graphical applications.
 Optimized inter-process communication (IPC) mechanisms using pipes, shared memory, semaphores, and
event objects.
 Work with internal stakeholders, including product managers to clarify project requirements and
specifications during development, testing and post-production.
 Helping IOS team to build and understand the current flow.
 Provide 2nd line support to the business by investigating and resolving day-to-day queries for
development and production environments.

Environment: VC++, C++, PL/SQL

Credit Suisse, New York


Mar’15 – Apr’17
Role: Lead Developer
Project: GBB (Global Bond blotter)

Description: Credit Suisse’s Investment Banking & Capital Markets division offers a broad range of investment
banking products and services which include advisory services related to M&A, divestitures, and takeover defense
strategies, as well as debt and equity offerings
GBB is a multi-currency trading application developed in C++, using real time trade entry, pricing, position, profit
and loss and risk management. It handles denomination and settlement in all currencies. GBB is designed to
support trading, pricing and position management in the Fixed Income Products GBB is a truly global trade blotter
application in European, Pacific and Americas region (Latin America, Former Soviet union, Eastern Europe, North
Asia, South Asia, Africa and Middle East) for traders. GBB is the mission critical application with 150+ users across
regions (EUROPE, APAC & AMERICAS).

Responsibilities:
 Mastered core Win32 API, MFC programming for handling processes, threads, file I/O and advanced window
creation and management.
 Built highly responsive GUIs using low-level APIs such as CreateWindow, WndProc, and WM_PAINT with
efficient use of UI for graphical rendering.
 Designed custom controls and dialogs for specific user requirements, enabling seamless user interaction.
 Developed and maintained asynchronous and event-driven architectures for real-time application needs,
 Design and implementation of new components.
 Designed and implemented multithreaded applications using VC++and Win32 threads, mutexes, and critical
sections for concurrent processing.

Page 5 of 8
 Utilized thread pools and asynchronous I/O operations to improve performance and scalability in resource-
intensive applications.
 Production Support Front office.
 Communication with Client as well as with other teams as working at client location.
 Programming both new applications and maintenance work.
 Weekly status Reports to higher management

Environment: VC++, C++, PL/SQL, AQT, Git, Visual Studio, Tableau, SVN

Credit Suisse, New York Feb’13 –


Mar’15
Role: Lead Developer
Project: TREE (Trade Reporting Engine for Europe)

Description: Credit Suisse’s Investment Banking & Capital Markets division offers a broad range of investment
banking products and services which include advisory services related to M&A, divestitures, and takeover defence
strategies, as well as debt and equity offerings
TREE is one the Trading application developed in VC++ with xml configuration. The essential aim of Trade
Reporting is transparency; the idea is to ensure that all participants in a given market can gain access to accurate
and complete information, in real time, regarding the transactions taking place. When CS receives an order from a
client the trader has lots of options about how to fill the order. However, for trades executed over-the-counter,
not on an exchange order book, the financial entity undertaking the transaction must report the trade, this is
where TREE comes in. TREE takes the trades and decides if reportable or not. If reportable its sends it to exchange

Responsibilities:
 Implemented thread-safe using VC++, Win32 threading models & MFC, like CreateThread,
WaitForSingleObject, and CriticalSection for shared resource management
 Optimized CPU utilization through thread pooling, parallel processing, and advanced synchronization
techniques, including mutexes, semaphores, and condition variables.
 Debugged and resolved complex concurrency issues like deadlocks and race conditions in multithreaded
environments.
 Implementation of SDLC.
 Responsible for design and implementation of a web-based solution.
 Involved in database design.
 Design and implementation of new components and testing.
 Production Support Front office
 Communication with Client as well as with other teams as working at client location. Programming both
new applications and maintenance work

Environment: VC++, C++, PL/SQL, SVN

Nissan Automobiles - Japan Jan’10 – Feb’13


Role: Developer
Project: Automatic Evaluation System-REAL ECU

Description: Automatic Evaluation System for automatic testing of ECUs in car. Its purpose is to automate
manual operations, visual inspection in order to facilitate the effectiveness of evaluation process. Its role is to
Page 6 of 8
send and receive Analog, Digital and CAN signals to/from real ECUs set-up. Signals received during test are
logged in a log file in MDF format and is used by Judgment tool. Judgment tool understands a CSB file format.
For this, conversion from MDF file format to CSB file format is required.

Responsibilities:
 Delivered rich VC++ , Win32 MFC-based applications with enhanced user interfaces, leveraging components
like CWnd, CDialog, CView, CDocument, and CWinApp.
 Customized MFC frameworks for advanced features such as splitter windows, property sheets, docking
windows, and toolbars.
 Developed applications with Document/View Architecture, enabling seamless data sharing and improved code
structure.
 Requirement Analysis, understanding file formats.
 Understanding the Functional specs of vehicle.
 Analyzing the logs that are generated after running test scenario’s on real/simulated environment.
 Providing support to both project and area team members.
 Working with users to develop strong understanding of the business area being supported.

Environment: VC++, C++, CAN Protocol, EPIF, DEIPF

Nissan Automobiles Japan Nov’05 – Jan’10


Role: Developer
Project: Automatic Evaluation System-SIMULTED ECU

Description: Automatic Evaluation System for automatic testing of ECUs in car. Its purpose is to automate
manual operations, visual inspection in order to facilitate the effectiveness of evaluation process. Its role is to
send and receive Analog, Digital and CAN signals to/from simulated ECUs (Statemate Models) set-up. Signals
received during test are logged in a log file in MDF format and is used by Judgment tool. Judgment tool
understands a CSB file format. For this, conversion from MDF file format to CSB file format is required.

Responsibilities:
 Designed and implemented multithreaded applications for high-performance, concurrent tasks.
 Developed a data acquisition system used MFC& Win32 threads and thread pools for processing sensor data
from multiple sources concurrently.
 Ensured thread safety by using mutexes, critical sections, and condition variables, avoiding race conditions
and deadlocks.
 Requirement Analysis, understanding file formats.
 Understanding the Functional specs of vehicle.
 Proficient in debugging complex issues using tools like WinDbg, Visual Studio Debugger, Process Explorer, and
custom logging systems.
 Involved in the design of specific module.
 Analyzing the logs that are generated after running test scenario’s on real/simulated environment.
 Providing support to both project and area team members.
 Working with users to develop strong understanding of the business area being supported.
 Documentation

Page 7 of 8
Environment: VC++, C++, CAN Protocol, EPIF, DEIPF

Page 8 of 8

You might also like