Post Job Free
Sign in

C++ Software Engineer

Location:
Dublin, OH, 43017
Posted:
February 11, 2025

Contact this candidate

Resume:

Umesh

*****.*****@*****.***

Embedded / C++ Developer

+1-937-***-****

Summary

C/C++ Software Engineer with 5+ years of experience specializing in financial industry and embedded firmware development.

Strong experience in Python, C/C++ on Linux, Cross - platform and embedded systems.

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.

Excellent knowledge of C++ templating, C++11, embedded systems design and developing macros, routines in C++. Hands on Experience with the microprocessor peripherals such as PWM, UART, I2C and SPI.

Knowledge on Linux Device Driver programming.

Experience includes working with various serial communication buses like SPI, MOST, I2C, UART, USART, GPIO, CAN &RS232.

Experience with the AUTOSAR architecture.

Worked with multi-microcontrollers platforms involving accelerometers, CompactFlash memory, LCD, USB.

Solid experience in Monte Carlo Simulations for Asset Pricing, VAR calculations, Market & Credit Risk Models and Stress Test for large Financial institutions

Good understanding of Software Development Life Cycle (SDLC), Design Pattern, Object Oriented Design (OOD) principles, Agile software development process

Developed Desktop Applications and Mobile Applications and improved application performance using Android, and Qt.

Experience in Financial Products, their valuation and risk management models and their implementations in C++

Specialization in designing and developing Object Oriented applications using oops.

Experience in Automotive Technology with Software (C++) Development for Infotainment System in Car.

Experience using in Python, Shell, Bash, Pearl scripting, Kernel debugging and QT-QNX.

Experience in Database Designing and handling database using Sqlite3.

Experience using VC++ (7.1, 8.0), STL, Multi-Threaded Programming.

Experience with Debugger Tools such as GNU (GDB), and DBX

Experience with CI/CD and designing an environment for the CI/CD.

Extensive experience in Object - Oriented programming with low latency C++,

C#, Java, Python in building Risk Analytics, Model Review, Simulation and Test Systems.

Solid experience in Financial Products, their valuation and risk management models and their implementations in C++

Proficient in Data-Structures, Design Patterns in C++

Solid experience in building multi-threaded applications in C++, Python

Very strong exposure on software development on Embedded Linux, VxWorks (RTOS), Solaris and Linux.

Proficient in debugging using tools like gdb, dbx and pdb. Acted as second and third level support at various organizations.

Excellent experience in development of multi - threaded real-time embedded, IoT &mobile applications using Python, Java, C++, C, Embedded C, Android BSP, MATLAB, Embedded Linux etc.

Good experience with JENKINS and other build environment tools. Extensively used Bit bake and Yocto make processes.

Expertise in software product life cycle, design process including requirement definition, prototyping, proof of concept, design, implementation, testing, unit test framework, bug fixing and maintenance

Design Software architecture using UML based design tools.

Programmed in C for the 16-bit Microchip 33FJ128MC802 microcontroller that implements a selectable cooperative/preemptive RTOS.

Proficient in financial protocols and technologies like FIX protocol, CTCI, B-Pipe (bloomberg) feed.

Developed, implemented, tested, and analyzed improvements and features for e- commerce, order management applications, financial trading and risk management systems, telecommunication billing systems, and enhanced both vendor and merchant website content displaying purchased orders.

Resolved severe level production system issues to increase revenue for this financial investment business area.

Advanced full life-cycle development for real-time production applications while providing daily application system support for end users and merchant businesses (in financial and telecommunications industries).

Excellent communication, inter-personal and collaboration skills required to successfully deliver on engagements.

TECHNICAL SKILLS

Language: C, C++, Python, JAVA, C#, Embedded C

OS: Linux, RHEL, Unix, Ubuntu, Windows7/10

Database: SQL, XML, ORACLE, MS-SQL SERVER, MySQL, Cassandra, IBM DB2 and MongoDB.

OOAD: UML, Design Patterns.

Cloud Platform: AWS

Compiler/IDE/ Debugger: Visual Studio, GCC/GDB, Eclipse INDIGO, VS 2012, Carbide C++ 3.1.0, QT Creator

Tools: IDE, MS VC++, Eclipse

Libraries & Frameworks: STL, BDE, QT/QML, IPC, multithreading, sockets, SOAP web services, Software Design, Quick FIX, OOP/OOD, Design Patterns, Google Test.

Build Tools: Bit bake, Yocto, Jenkins, cppCheck, Coverity, Make, ANT.

Configuration Management tools: CVS, SVN, Git/GitHub

Other Tools: SIP Inspector, Sipp, Wireshark, Ethereal, GDB, SIP Protos, CICD, Splunk, Rally, Jira, Kibana

PROFESSIONAL EXPERIENCE:

FORD Motors PA July 2022 – Till Date

Embedded / C++ Developer

Responsibilities:

Implementation of CAN protocol and Monitoring of Data Transmission on various ECU units using CAN Analyzer.

Used Python scripts for generating reports by pulling data from database.

Involved in code check - ins and code-checkout using GitHub repository and performs code reviews at regular intervals.

Developed software algorithms and Model-based C++ programs for embedded control systems using MATLAB/Simulink.

Designed, developed, and deployed new processes for sending trading events to downstream RISK applications.

Worked and implemented several Arduino based embedded systems.

Wrote the cMake files which had the project configuration.

Implemented Image processing algorithms that would run on graphic cards using Libraries namely OpenCL (for Nvidia and other graphic cards) and CUDA (for Nvidia) using C++.

Designed and developed a multithreaded process data generated breaks on income events and notified the users when underlying indicative data changed using C++, STL, and multithreading.

Performed the integration test of the SW components and defined the CI/CD environment.

used Rust's high performance and low-level control capabilities to meet the real-time processing requirements of automotive systems while minimizing runtime errors through strict compile-time checks.

Hands on experience in Configuration and Auto System testing of ECUs.

Integration of teh UDS protocol software with hardware platform and BSP (integration of CAN, timer, scheduler etc.).

Worked on Requirement analysis, low level design and development of Automotive Infotainment & Telematics products and device drivers.

Porting Bluetooth protocol and development of application software.

Designed and managed API system deployment using a fast HTTP server and Amazon AWS architecture.

Developed and maintained software libraries and tools to streamline CarPlay integration.

Design and development of Bluetooth and WI-FI driver's development.

Translating automotive infotainment designs from Python into implementations in C++ and QML using QT 5 and Linux

Implementation and integration of Bluetooth and WI-FI resources with existing application.

Used STL containers, algorithms, various data structures and design patterns in software design like Singleton for db connections & Observer pattern for processing events.

Worked on the AUTOSAR architecture for the SPI and the LED drivers.

Writing operator manuals, creating technical drawings, PLC programming.

Conducted code reviews according to C++ Coding Standards and Conventions.

Research of automatic recognition mechanisms for Human Computer Interaction devices.

Experience in Socket Programming, IPC (Inter Process Communication) mechanisms under different OS/RTOS.

Experience working on a wide range of microcontrollers/microprocessors such as 8051, 8086, ARM, PIC on Embedded devices.

Programming and Changing UI screens using C++/QT Used multi-threading extensively.

Performing testing for Infotainment domains such as Radio, Bluetooth Connectivity.

Performed embedded SDK migration and integrated Wi-Fi and Bluetooth application code.

Maintenance and enhancement of the Automation using embedded C.

Migrated from SVN for source control to Git, local GitHub.

Automated Quality Check tasks by creating PL/SQL procedures, cursors, functions and dynamic SQL.

Bug Tracking, issue tracking, and project management & updating defect status using JIRA.

Prepare Test Cases, Test Sets, Defect tracking report, Report progress on HP ALM, created Reports and monitored UNIX logs for troubleshooting defects.

Environment: C, C++, Linux, CAN, LIN, RS 232, QT/QML, carplay, Python, CI/CD, Docker, Microcontroller, SSL/TLS, Embedded C, TCP/IP, REST APIs, gdb Debug Tools, POSIX Threads.

AT & T India July 2020 – Dec 2021

Embedded C/C++ Developer

Responsibilities

Primary tasks include scoping out, designing, and implementing software solutions to the Internet of Things (IoT) in Home Automation.

Developed and optimized C++ code for low-level system initialization tasks, including memory management and hardware initialization within U-Boot and Linux kernel.

Developing and maintaining firmware in C/C++ for Internet of Things (IoT) devices.

Developed an embedded software application, and Assembly code for ARM Cortex-M 32-bit-based Microcontrollers.

Integrated Conan with Yocto recipes, enabling the building and packaging of dependencies as part of the Yocto build process.

Worked extensively with C++ to develop and optimize features for Android-based platforms within the AOSP (Android Open Source Project).

Experience in Continuous Integration, Test Driven Development, Jenkins, PTC Integrity, SVN

Worked on Technologies: QT, QML, C++, QNX, UML, JavaScript and Json.

Played a critical role in complete project set up which includes helping team for development tools (Yocto 2.2).

Configured, Implemented, and integrated bootloader.

Working experience on Linux OS.

Worked extensively on Internet of Things solution using MQTT/HTTPS Protocols on Arduino/ARM embedded boards to port the solution to public cloud (AWS).

Experience in the development of Real-Time Operating System (RTOS) with concepts like multithreading and Socket programming, operating system concepts like IPC mechanism and synchronization methods.

Designed and implemented remote services using protocols like HTTP, HTTPS, and WebSocket for communication over networks.

Used the editor gedit, IDE - QT Creator, and the compiler GCC with debugger gdb.

Implemented new device type handlers for third-party end devices (sensors, bulbs) to support different capabilities.

Debugged kernel-related issues, including device driver problems, boot failures, and performance bottlenecks, using tools like GDB, printk, and kernel log analysis.

Improved the efficiency and reliability of builds by using Conan to resolve and package dependencies for cross-compilation environments.

Responsible for Linux Board Support Package(BSP) for ARM, PowerPC and MIPS based boards.

The GUI development of Center Console using Qt-Embedded and python programming.

Hand-coded part of the algorithm using Embedded MATLAB Editor and compiled to C Code.

Experience in creating UML Design diagrams like sequence and class diagrams.

Implementation and integration of Bluetooth and WI-FI resources with existing applications.

As per client requirement compiled the hub Core for Raspberry PI3 platform which supports hub Core software on Raspberry pi2 & pi3 devices.

Contributed to system-level programming by modifying and enhancing AOSP components to improve performance, stability, and compatibility across a variety of devices.

Responsible for Linux Board Support Package (BSP) for ARM and MIPS-based boards.

Write Python scripts to automate or simulate devices.

Experience with Continuous integration and unit testing.

A mobile application was used to configure the settings of the controllable devices.

Fix bugs in C/C++, program crashes, memory leaks, performance bugs.

Experience with embedded toolchains, cross-compilation and build tools such as Yocto.

Environment: Embedded C, C++, C++11, Python, SDK, gRPC, BSP, GitHub, Jira/Confluence, Slack, Rust, Json, ZigBee, Z-wave, Linux.

JPMC, India April 2019 – Jun 2020

C/C++ developer

Responsibilities:

Developed a multithreaded cache offline program in C++, supporting various user interfaces to deliver/process data for scalable, low latency applications.

Part of a development team to implement Equity Order Management system to accept orders from UI, FIX, send/route to Exchanges and other broker dealers and fill the trades in C++ on Unix hybrid and Linux platforms.

Revamped most of the existing C, FORTRAN legacy code into C++11 with multi-threading.

Worked as individual contributor for Migrating 32-bit application to 64-bit application.

Worked on build automation and dependency resolution at compile time using Gradle.

Provide front line support to Risk managers for day to day risk functions.

Worked on Embedded environment using QT-QNX interfaces.

Implemented the project on Unix Platform using C Compiler and Debugger Tools.

Developed Micro services using Go language and developed corresponding test cases.

Development background in Linux/UNIX environments (Ubuntu and RHEL)

Architectural design, development, and support for low-latency data processing (C/C++, Java, Python)

Used STL extensively to store data on Order history, accounts, securities, etc. for fast retrieval/update.

Designed UI screens using Bloomberg UI toolkit. Coded, tested business logic for UI in JavaScript, to validate user inputs, calling various web services for information retrieval and updates.

Developed/enhanced Visual C++ GUI applications that gather and generate statistics on investments and loans.

Developed SOAP web services for order and trade related information to display on UI. Used proprietary MQ to subscribe to order and trade updates.

Worked with Object Oriented Programming, data structures, algorithms, and debugging of C++ code within the server application components.

Involved in the SDLC which included analysis, coding and testing of this application trading system component.

Developed communication protocols such as FIX over TCP/IP, SSL/TLS and HTTP for Financial Applications.

TCP/IP communication using socket

Worked on creating new tertiary environment which includes new batch creation and environment set up.

Used Python scripts to generate various reports like OATS, P&L, transaction history, user privilages, limit rules and commission schedule reports.

Work on platform resiliency & stability initiatives.

Developed new JILs for Autosys Scheduling.

Used SVN and git/github for source code control.

Experience in development and maintenance of trading systems and applications responsible for financial risk calculations

Environment: C++, STL, Boost, TCP/IP, GDB, Multithreading, Gradle, Linux, Autosys, Shell scripting, Build automation, SQL, PLSQL, DB2, MongoDB, Confluence, C, C++, Design Patterns, SQL, Python, ksh, Linux, POSIX Threads, SVN, git, github, ThreadX, gdb, pdb, dbx.



Contact this candidate