Sr.software Developer/c++ Developer Resume
Roundlake, IL
SUMMARY
- C/C++ Software Engineer with 7+ years of experience specializing in Embedded firmware development and healthcare industry, Automotive industry.
- Experience in various aspects of system architecture, software design, development, implementation and validation.
- Strong experience in Human Machine Interface (HMI) development forembeddeddevices using QT, QML. Creating Test Plans and Test procedures, driving Test Strategies and tools identification, Managing Test design through cross functional teams and creating Test Summary Reports.
- Strong experience in Python, C/C++ on Linux, Cross - platform and embedded systems.
- Extensive Experience in Multi-tier Application Development and good noledge of Design Patterns.
- Developing firmware and drivers for WIFI modules, Ethernet modules and teh modules in linux operating system for intel based micro controllers.
- Worked on Client/Server, SQL Server and Web based applications with strong business understanding and noledge of Order management systems.
- Proficient in financial protocols and technologies like FIX protocol, CTCI, B-Pipe (bloomberg) feed.
- Proficient in static analysis tools like cpp Check and Coverity. Caught many severe bugs before production releases.
- Experience with networking and application protocols like Ethernet, WIFI, TCP/IP and USB.
- Design, develop and evolve Imagination's Windows DirectX graphics drivers.
- Expertise in developing multithreaded network based client-server applications.
- Developed XML C++ SOAP web services on Unix and Linux platforms.
- Very strong exposure on software development on Embedded Linux, VxWorks (RTOS), Solaris and Linux.
- Programmed in C for teh 16-bit Microchip 33FJ128MC802 microcontroller dat implements a selectable cooperative/preemptive RTOS.
- Excellent software skills in translating complex algorithmic and heuristic methods to software.
- Performs routine engineering assignments of related tasks which are typically a focused portion of larger projects. These tasks provide experience and familiarization with teh engineering staff, methods, techniques, theories, Corporate and division SOP's, policies and projects.
- With minimal guidance, schedules and leads a team through teh development and administration deliverables in accordance with Program Plans and applicable corporate policies.
- Ability to solve routine design and engineering tasks with some assistance. Able to solve problems with periodic monitoring.
- Assists in teh preparation and participation in technical reviews and responsible for organizing data and preparing appropriate documentation for assigned projects.
- Devices new approaches to complex problems through adaptations and modifications of standard technical principals.
- Performs teh management of DHF/DMR elements at teh direction of technical leadership.
- Experience in creating System Test Plans and Test procedures, driving Test Strategies and tools identification, Managing System Test design through cross functional teams and creating Test Summary Reports.
- Developed various modes to choose specific ARM bootstrap mode both for FPGA and ASIC on uboot and custom bootloader.
- Configured, Implemented and integrated bootloader.
- Develop multiple aspects of graphics software, display driver development and simulation environment development.
- Implemented to maintain and support SNMP monitoring alert thresholds for routers, switches, and firewalls and databases.
- Keep up-to-date with Unity graphics features, look for areas to improve graphics performance across teh codebase.
- Develop and deliver software code based on defined requirements and design for such sw modules as bootloader, communication stack, calibration, diagnostics, etc.
- Has experience in working on UML tools like Ration Rose, Rhapsody, StarUML Worked on creating class, sequence, activity, deployment diagrams.
- Has experience working with memory profiler tools like Visual Studio's built-in memory tracker and Rational Purifier.
- Integration of teh UDS protocol software with hardware platform and BSP (integration of CAN, timer, scheduler etc.).
- Design network test cases from existing docsis test data to improve stb/cpe performance.
- Experience with real-time operating systems including Green Hills Integrity, VxWorks, QNX, embedded Linux, or other RTOS desired.
- Has experience working with bug-tracker Rational Clear Quest.
- Has good working experience of Vector Canalyzer and Canoe devices and corresponding applications. Has experience creating IG blocks, simulating CAN messages for ECUs. Worked with Value CAN and Vehicle Spy application.
- Using collection of graphic design, video editing, web development, photography, along with a set of mobile applications and also some optionalcloud services.
- Has good noledge in source control activities using VSS, SVN, Rational Clear case, CVS.
- Has good experience in creating windows setups using Install Shield.
- Has good skills in writing requirement, design and unit test documents.
- Has exposure with Agile software methodology and Scrum activities
- Experience working with clients like, Gilbargo, Bloomberg, Ansanldo STS, Hitachi ZF-TRW etc
- Communication protocol suits TCP/IP, UDP, working noledge of CAN and LIN.
TECHNICAL SKILLS
Programming Languages & Scripts: C, C++, Python, HTML, CSS, Java script
Operating Systems: Sun Solaris, IBM AIX, RHEL, Ubuntu, Red hat, QNX.
Version Control: GIT/github, SVN, CVS
Protocols: TCP/IP, UDP, CAN, SNMP, KWP2000, LIN, RS 232, GMLAN, KWP, HTTP, FTP, TFTP
Databases: Oracle, Microsoft SQL Server, IBM DB2, SQLite and MongoDB
Libraries & Frameworks: STL, BDE, IPC, multithreading, sockets, heap allocators, signals/event handling, SOAP webservices, Software Design OOP/OOD, OOAD, OO, Design Patterns, Google Test, Google Mock, Quick FIX
Build: Bitbake, Yocto, Jenkins, cppCheck, Coverity.
Tools: emacs, eclipse, UML tools, MS-Office, splunk, Jira, OpenGrok
Simulation Tools: Verifix, Labview, Cadence, Pspice, Hspice, Synopsys, Xilinx, dSPACE HIL
Debugging Tools: GDB, JTAG
Hardware: L8z, L3z, Safety controllers, ICE1, ICE2 controllers, ARM microcontrollers, FPGA design, Microprocessor programming, Analog Circuit design and analysis, Digital Signal Processing circuit design PowerPC, ARM7/ARM9, Intel x86.
Configuration Management tools: GIT/GitHub, SVN, CVS, Codecollaborator
PROFESSIONAL EXPERIENCE
Confidential, RoundLake, IL
Sr.Software Developer/C++ Developer
Responsibilities:
- Performs routine engineering assignments of related tasks which are typically a focused portion of larger projects. These tasks provide experience and familiarization with teh engineering staff, methods, techniques, theories, Corporate and division SOP's, policies and projects.
- With minimal guidance, schedules and leads a team through teh development and administration deliverables in accordance with Program Plans and applicable corporate policies.
- Ability to solve routine design and engineering tasks with some assistance. Able to solve problems with periodic monitoring.
- Assists in teh preparation and participation in technical reviews and responsible for organizing data and preparing appropriate documentation for assigned projects.
- Devices new approaches to complex problems through adaptations and modifications of standard technical principals.
- Performs teh management of DHF/DMR elements at teh direction of technical leadership.
- Experience in creating System Test Plans and Test procedures, driving Test Strategies and tools identification, Managing System Test design through cross functional teams and creating Test Summary Reports.
- Design, develop and evolve Imagination's Windows DirectX graphics drivers.
- Develop multiple aspects of graphics software, display driver development and simulation environment development.
- Keep up-to-date with Unity graphics features, look for areas to improve graphics performance across teh codebase.
- WDDM (Windows Display Driver Model) is a display driver architecture introduced with Windows Vista dat improves graphics performance over teh previous architecture by more fully utilizing a computer's GPU to render system graphics.
- Experience in C/C++ on Linux, Cross-platform and embedded systems.
- Proficient in static analysis tools like cpp Check and Coverity. Caught many severe bugs before production releases.
- Triggered build using Jenkins to verify integration is success.
- Worked on Version Control systems like Git. Regularly participated in code reviews on gerrit.
- Writing code in SQLite and maintaining applications using large datasets.
Confidential, Mayfield Heights, OH
Sr. Embedded C/C++ Developer
Responsibilities:
- Using RSLinx, Configured teh Logix Controllers and Ethernet/IP modules to be identified by other devices and flashed teh controller with updated firmware using ControlFLASH in order to verify teh functionality supported by teh firmware
- Performing RTB (Run Time Business) activities, such as fixing all teh bugs found in unit testing. This also includes helping teh application users in understanding teh application, setting up teh environment for them to make up teh application up, and running
- Version One Tool & Agile Process: - Working on User Stories (Backlog items), Maintaining and Closing teh Backlog items once after completing teh task
- Worked during various phases of projects such as designing, development, Unit testing, Firmware Functional Testing (FFT), Integration Testing.
- Developing firmware and drivers for WIFI modules, Ethernt modules and teh modules in linux operating system for intel based micro controllers.
- Implementing Scripts to improve teh test code quality and automate test creation.
- Executing and reviewing teh test cases, document and report teh results
- Triggered build using Jenkins to verify integration is success
- Worked on Code Review Tools like Code Collaborator.
- Worked on Version Control systems like Clear Case/GIT.
- Gained Knowledge in MISRA C Standards with Coverity Static Analysis tool
- Engineering test development and augmentation using C, C++,MFC, CPPUNIT architecture and python
- Was responsible for developing execution, peer reviews and final delivery of Graphical User interface in Studio 5000(tool to configure teh controllers) and firmware functionality in CompactLogix and ControlLogix Programmable Controllers.
- Worked on Dynamic Cyclic Read/write Implementation in Firmware in ICE1 and ICE2
- Worked on C/C++, Python,Studio-5000(Including Motion instructions), PLC’s, Logix Platform, Clear Case, GIT, Code Collabrator, VB6.0, C++ and OOPS, MFC, SQL Server and python scripting.
- Specialization on CIP (Common Industrial protocol) used in Studio 5000 Automation Engineering & Design Environment(TM) applicationsover Ethernet/IP for high-speed motion applications
- Understand teh FRS document and technical documents of Integrated Comms & Execution ASIC ICE1 and ICE2 code.
- Using collection of graphic design, video editing, web development, photography, along with a set of mobile applications and also some optionalcloud services .
- Working on C/C++ code and debugging with Logix controllers using Wind River work bench which provides teh IDE for accessing and compiling teh product source code for Logix based products and controllers with a Logix AUX ARM on VxWorks Operating System.
- Troubleshooting of traffic using Packet Capture and analyze usingWire Sharkand analyzing teh performance of ControlLogix 5580 and 5570 Controllers (Allen-Bradley products).
- Responsible for developing complete and accurate design description for ICE1 and ICE2 safety integration level 2.
- Developed various modes to choose specific ARM bootstrap mode both for FPGA and ASIC on uboot and custom bootloader.
- Configured, Implemented and integrated bootloader.
- Specialized in Rockwell Software such as - RSLinx, Control Flash, Studio5000 (Including Motion instructions), Factory Talk, ControlLogix and CompactLogix family.
- Implementation of Design & development of Migration project from VB6.0 to C++ using MFC platform, also application development using WPF, C#.Net and VB6.0. Automated Testing of Controllers & IO using Rockwell Software & custom scripting tools guiding to team members and interacting with customer.
- Experience with networking and application protocols like Ethernet, WIFI, TCP/IP and USB.
- Developed Automate tests with C/C++/RATools software to interact directly with teh controller’s.
- Performing RTB (Run Time Business) activities, such as fixing all teh bugs found in unit testing. This also includes helping teh application users in understanding teh application, setting up teh environment for them to make up teh application up, and running
- Version One Tool & Agile Process: - Working on User Stories (Backlog items), Maintaining and Closing teh Backlog items once after completing teh task.
- Implementing Scripts to improve teh test code quality and automate test creation.
- Executing and reviewing teh test cases, document and report teh results.
Confidential, Warren, MI
Embedded C/C++ Developer
Responsibilities:
- Designed, developed, and deployed new processes for sending trading events to downstream RISK applications.
- Designed and Implemented TCP/IP communication code to send put away vehicle data, information and records to teh cloud to show/store information on GM site.
- 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.
- Experience with real-time operating systems including Green Hills Integrity, VxWorks, QNX, embedded Linux, or other RTOS desired.
- Integration of teh UDS protocol software with hardware platform and BSP (integration of CAN, timer, scheduler etc.).
- Develop diagnostics software to bring-up and validate ASIC features on both pre-silicon environment (FPGA, C-Model, Palladium) and post-silicon system (real ASIC and platform).
- Developed Front End UI Screens usingC++/QT.
- Took active part in UI Development and coding usingC++/STL/QT.
- Worked and implemented several Arduino based embedded systems.
- Hands on experience in Configuration and Autosar System testing of ECUs.
- Implemented to maintain and support SNMP monitoring alert thresholds for routers, switches, and firewalls and databases.
- Porting Bluetooth protocol and development of application software.
- Develop multiple aspects of graphics software, display driver development and simulation environment development.
- Keep up-to-date with Unity graphics features, look for areas to improve graphics performance across teh codebase.
- Develop and deliver software code based on defined requirements and design for such sw modules as bootloader, communication stack, calibration, diagnostics, etc.
- Writing operator manuals, creating technical drawings, PLC programming.
- Conducted code reviews according to C++ Coding Standards and Conventions.
- Experience with a variety of network protocols and interfaces (TCP/IP, UDP, RTP/RTCP, ICE/RFC 5245, media streaming, Wi-Fi, etc.)
- Design network test cases from existing docsis test data to improve stb/cpe performance.
- 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.
- Design and development of Bluetooth and WI-FI drivers development.
- Implementation and integration of Bluetooth and WI-FI resources with existing application.
- Migrated from SVN for source control to Git, local Git Hub.
- Has experience in working on UML tools like Ration Rose, Rhapsody, Star UML Worked on creating class, sequence, activity, deployment diagrams.
- Excellent software skills in translating complex algorithmic and heuristic methods to software.
- 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.
- Used STL containers, algorithms, various data structures and design patterns in software design like Singleton for db connections & Observer pattern for processing events.
- 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 teh Automation using embedded C.
- 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, PCI, QT/QML, Python, Microcontroller, TCL-IVR, H323 VOIP, Cluster, Python, Embedded C, Cisco, UML, OOAD, OO, TCP/IP, QNX, LIN, RS 232, Windows, CPI, MFC.
Confidential
C/C++ Developer
Responsibilities:
- Debugging and Troubleshooting production issues, enforced, documented and implemented C++ standards guidelines.
- Developed a remote thread monitoring tool for a production environment with critical security requirements.
- Developed communication protocols such as FIX over TCP/IP, SSL/TLS, HTTP for Financial Applications.
- Implemented inter-process synchronization using Unix domain sockets to synchronize various tasks.
- Worked with an alert system dat generated alerts for customers based on specific events happening in teh market using C++.
- Analysis of teh Functional Specifications and Business Requirements.
- Revamped most of teh 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.
- Work on teh Low Level and High Level Design Documents.
- 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 teh code efficiency by optimizing teh code and caching frequently used data.
- Design and develop solutions using C, C++, Multi-Threaded, Shell Scripting and Python.
- Using Git as code repository and JIRA Tracker as Defect management system.
- Using Oracle SQL Developer for Database Activities.
- Peer reviews of teh Design and Source Code (C, C++, and Shell Scripts).
- Develop and Execute teh Module Test Cases on Unit and Integration Testing environments using Google Test, Python Unit testing.
- Support System Testing, Acceptance (UAT) Testing and Production changes.
- Utilized STL and C++ algorithms to achieve optimal design efficiency.
- Designed, developed and deployed new oracle PL/SQL stored procedures.
- Utilized OCCI to access teh stored procedures from code.
- To accomplish all these, me 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++, Shell, PL/SQL, Cppcheck, Clearcase, Rational Rose, LINUX.
Confidential
C/C++ Developer
Responsibilities:
- Analysis of teh Functional Specifications and Business Requirements.
- Design and develop solutions using C, C++, Multi-Threaded, Shell Scripting and Python
- Revamped most of teh 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 teh Low Level and high-Level Design Documents.
- Using Oracle SQL Developer for Database Activities.
- Peer reviews of teh 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.
- Designed and developed various scripts for enablement or disablement of data using C, Shelland 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 teh code efficiency by optimizing teh 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.
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.