Sr. Embedded C/c++ Developer Resume
Melbourne, FL
SUMMARY:
- Over 8 years of IT experience in software development, which includes user interaction, system feasibility study, requirement analysis, design, testing, development, configuration, client interaction and support.
- Expertise in the OOPS, Multi - threading, String pool, C++ Packages, sockets, Exception-Handling & Collections, developing various Web services like SOAP, REST and Restful APIs depending on client/Customer requirements.
- Experience in using IDEs Visual Studio 2010/2015, GNAT programming Studio, Eclipse, and Code Composer Studio.
- Good experience in OOA/OOD, SOA, Design Patterns, and UML.
- Good knowledge in embedded development using QT interface and QNX development area.
- Configuration management tools like Git/GitHub, SVN, Clear Case, and VSS.
- Development experience with XML, JSON, TCP/IP, UDP/IP, SSL/TLS, HTTP, and multithreaded application using IPC mechanism.
- Expertise in Networking protocols such as IPv4/IPv6, DNS, FTP, POP and DHCP and also in Management protocols such as SNMP/TR069.
- Strong expertise in C, C++, C++11.
- Developing firmware and drivers for Wi-Fi modules, Ethernet modules and other modules in a Linux operating system for Intel based microcontroller.
- Experience with serial communications including RS232, RS485, I2C, UART, SPI, MDIO and I2S.
- Strong experience in automating system test and production tasks using Shell Scripting and Python.
- Strong understanding of Data Structures, IPC, Multithreading, Socket Programming, and Memory management.
- Have experience working with (Internet of Things) IOT and WiFi protocol.
- Research of automatic recognition mechanisms for Human Computer Interaction devices including Bluetooth, and Zig Bee.
- Ported code onto different platforms (Sun Solaris, IBM AIX, and Red Hat Enterprise Linux).
- Experience working on a wide range of microcontrollers/microprocessors such as 8051, 8086, ARM, PIC on embedded devices.
- Experienced in STL concepts of C++ and used C++ 11/C++14 features like shared ptr, weak ptr, Lambda functions, auto, and atomic operations.
- Expert knowledge in development and debugging tools using Visual Studio & GCC.
- Proficient in using Debugging tools like gdb, dbx, pdb.
- Good experience in Bluetooth drivers and Bluetooth profiles
- Experience in writing shell scripts in bash, ksh and csh environments.
TECHNICAL SKILLS:
SKILL: Specifics
Programming Languages: C, C++, Java, C#, C++ 11/14, HTML, CSS, Python, Assembly Programming, Shell Scripting
Operating System: Systems Windows, UNIX/Linux, QNX and Ubuntu.
IDEs Tools: Visual Studio, GNAT programming Studio, Eclipse, and Code Composer Studio.
Libraries: C++, Win32 SDK, MFC 6.0, Visual C++ 6.0, libCurl, signals/event handling, Software, Software Design OOP/OOD.
Database: Microsoft SQL Server, Oracle, MySQL, PostgreSQL and database MongoDB.
Protocols: TCP/IP, UDP, CAN, SNMP, KWP2000, LIN, RS 232, GMLAN, KWP
Version Control: CVS, SVN, Git, GitHub.
Methodologies: Agile, Sprint, Scrum and Waterfall.
Development Methodologies: OOAD, UML.
PROFESSIONAL EXPERIENCE:
Confidential, Melbourne, FL
Sr. Embedded C/C++ Developer
Responsibilities:
- Developed software algorithms and Model-based C++ programs for embedded control systems using MATLAB/Simulink.
- Developing the IoT applications by utilizing programming language C, Data structure, Algorithm, Object Oriented Programming, and Object-Oriented Analysis Language C++, STL, Exception Handling, information encryption and decoding.
- Designed, developed, and deployed new processes for sending trading events to downstream RISK applications.
- Worked and implemented several Arduino based embedded systems.
- Hands on experience in Configuration and Autosar System testing of ECUs.
- Designed and Implemented TCP/IP communication code to send put away vehicle data, information, and records to the cloud to show/store information on GM site.
- Implementation of CAN protocol and Monitoring of Data Transmission on various ECU units using CAN Analyzer.
- Strong knowledge on boot loader in developing U-Boot and sending specific commands to PC through external connections.
- 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.
- Streaming Meter is installed in households which monitors internet activity of the devices connected via Wired/WiFi (5G/2G spectrum bands) and calculates data such as URL, Bandwidth (5G/2G).
- Porting Bluetooth protocol and development of application software.
- Design and development of Bluetooth and WI-FI driver’s development.
- 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.
- 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.
- Writing operator manuals, creating technical drawings, PLC programming.
- 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++, VXworks, Intel IoT Platform, Bootloader,PCI, QT/QML, Python, Microcontroller, TCL-IVR, H323 VOIP, Python, Embedded C, Cisco, TCP/IP, LIN, RS 232, Windows, CPI, MFC.
Confidential, Michigan
Sr. Embedded C/C++ Developer
Responsibilities:
- Develop a test system using Freescale evaluation board using embedded C, C++ to provide synchronization and start up node emulation to the Engine module test system.
- Manage to deliver the multiple Vehicle platform / variants projects for the customer on time with a high quality.
- Ensure the all the set quality standards by performing exhaustive Hardware In
- Loop Testing as the project team is responsible to deliver the work products directly to OEM.
- Responsible for quality control, improving efficiency, technical competency, and overall development of the team members.
- Wrote C++ programs for end of day operations (EOD) to close or roll the orders.
- Used STL extensively to store data on Order history, accounts, securities, etc. for fast retrieval/update.
- Worked with users, business, and exchanges to gather new requirements/enhancements, testing and final delivery of sub systems.
- Used various data structures and design patterns in applications like Singleton, Observer, Factory methods etc.
- Handled corporate action events to reflect the order price and currently implementing the tick size changes.
- 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.
- Involved in writing optimization techniques for more accuracy of Macros in C/C++, C and C++ routines and Oracle SQL, PL/SQL.
- Worked with google proto bufs for message parsing and handling.
- Worked on Embedded environment using QT-QNX interfaces.
- 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.
- 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, 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++, Design Patterns, SQL, Python, bash, ksh, Linux, POSIX Threads, SVN, git, GitHub, OOAD, BOOST libraries, gdb, pdb, dbx, OpenGrok, Jira.
Confidential, Dayton, OH
C / C++ Developer
Responsibilities:
- Extensively involved in bug fixing, blocker removals and working on story points.
- Work on the Low Level and High-Level Design Documents.
- Design and develop solutions using C, C++, Multi-Threaded, Shell Scripting.
- Using git as code repository and JIRA Tracker as Defect management system.
- Working extensively with off-shore team and various teams on onsite for development on regular basis.
- Used various Web Debugging proxy tools like Charles Web Debugging tool, Fiddler etc.,
- Worked on Mobile and web-based applications like Android, Windows based apps.
- Involved in code check-ins and code-checkout using GitHub repository and performs code reviews at regular intervals.
- Provide training to help ground teams and programs in the principles and practices of Agile.
- Worked on various databases like SQL, My-SQL, PL/SQL.
- Good hands on experience on Web services like REST API, SOAP API from data integration.
- Working on high priority tickets on various applications and providing them the exact resolution.
- Writing Visual C++ code in MS Visual Studio 2015 Community version.
- Proficient knowledge on ticketing tool JIRA.
- Designed and developed new C++ modules for sending open contracts to Equalled for reaching price agreement with counterparties.
- Involved in the project documentation using MS-Office, Visio. Performed various Testing like Unit test and writing test cases.
- Performing code reviews at regular intervals for the smooth running of application.
- Providing on-call support for Global teams located at various locations.
- Worked on SDLC methodologies like SCRUM (Sprints) involved in the development of the project. Working closely with Dev and QA team and resolving the crisis.
Environment: MS Visual Studio 2015, Charles Debugging tool, MS-Office, REST API, PCI, USB, SOAP API, RESTFUL API, GitHub, JIRA, Android Studio, UART, UNIX/LINUX, C++ 11, SQL, PL/SQL, SCRUM (Sprints), UAT, Test cases.
Confidential
C++ Developer
Responsibilities:
- Analysis of the Functional Specifications and Business Requirements.
- Design and develop solutions using C, C++, Multi-Threaded, Shell Scripting and Python
- Revamped most of the existing C, Fortran legacy code into C++11 with multi-threading.
- Ported code onto different platforms (Sun Solaris, IBM AIX, and Red Hat Enterprise Linux).
- Prepare Design and Development Deliverables.
- Developed a remote thread monitoring tool for a production environment with critical security requirements.
- Work on the Low Level and high-Level Design Documents.
- Using Oracle SQL Developer for Database Activities.
- Peer reviews of the Design and Source Code (C, C++, and Shell Scripts).
- Support System Testing, Acceptance (UAT) Testing and Production changes.
- Debugging and Troubleshooting production issues, enforced, documented, and implemented C++ standards guidelines.
- Developed communication protocols such as FIX over TCP/IP, SSL/TLS, HTTP for Financial Applications.
- Using Git as code repository and JIRA Tracker as Defect management system.
- Implemented inter-process synchronization using Unix domain sockets to synchronize various tasks.
- Worked with an alert system that generated alerts for customers based on specific events happening in the market using C++,
- Designed and developed various scripts for enablement or disablement of data using C, Shell and proprietary SQL database.
- Utilized various object-oriented techniques and implemented new logic for processing
- ICELINK events and CLEARING messages.
- Developed new C++ encapsulation wrapper classes for OCCI classes.
- Refactored existing code by introducing inheritance-based design.
- Improved the code efficiency by optimizing the code and caching frequently used data.
- Utilized STL and C++ algorithms to achieve optimal design efficiency.
- Designed, developed, and deployed new oracle PL/SQL stored procedures.
- Utilized OCCI to access the stored procedures from code.
- Develop and Execute the Module Test Cases on Unit and Integration Testing environments using Google Test, Python Unit testing.
- To accomplish all these, I used C++, Shell, PL/SQL, Cppcheck, Clearcase, Rational Rose.
- Provided support for internal business process and responsible for communicating detailed technical information and providing technical assistance to customers, systems, and management and external sources.
Environment: C, C++, STL, Unix, AIX, Linux, g++, gcc, Python, pdb, Shell Scripting, IBM DB2, Oracle, SVN, multithreading, thread pools, IPC, gdb, dbx.
Confidential
C / C++ Developer
Responsibilities:
- Worked with users from requirement gathering to the final delivery of the product, support, and rollout.
- Analyzed, Designed, and modified multithreaded applications.
- 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.