- C++ Software Developer with 4+ years of experience in Development, Production, Support & Troubleshooting.
- Strong experience in C/C++ on Linux using STL, multithreading (POSIX), Boost libraries, data structures, IPC (TCP/IP socket programming).
- Good Experience in C/C++ on Windows and Linux using visual studios(2015,17).
- Good knowledge on IoT (Internet of Things) end - to-end application development.
- Good hands on experience on Web services like RESTful API and XML data integration.
- Proficient at debugging code using gdb tools. Acted as second and third level support at various positions.
- Proficient in Web technologies: HTML, CSS, XML.
- Experience with networking and application protocols like Ethernet, Wi-Fi, TCP/IP and USB.
- Good knowledge in designing and implementing the Service Oriented Architecture (SOA).
- Good understanding of various software development models like Agile, Waterfall, and Spiral.
- Expert at sending XML and JSON data over wire and serializing and de-serializing the data.
- Strong background in working with the client to define business processes and develop high-level functional Requirements.
- Worked with users, business and exchanges to gather new requirements/enhancements, testing and final delivery of sub systems.
- Excellent analytical and diagnostic skills with proven ability to write high quality software with strong debugging and troubleshooting skills.
- Strong verbal and written communication skills used to successfully develop presentations, write reports and draft correspondence.
- Willing to relocate: Anywhere Authorized to work in the US for any employer.
- Experience in Agile and Scrum methodologies.
Languages: C++, Embedded C, Core Java, RESTful, JSON
Operating System: Linux, RHEL, Unix, Ubuntu, Windows7/10
Scripting: UNIX Shell Scripting, Python
Databases: Oracle, PL/SQL, IBM DB2, SQLite, MongoDB
OOAD: UML, Design Patterns
Configuration Management tools: CVS, SVN, Git/GitHub
Debugging Tools: gdb, dbx
Build Tools: Make
Bug Tracking tools: Bugzilla, Jira
Protocols: TCP/IP, I2C, SPI, UART, RS232, Bluetooth, Wi-Fi
Libraries & Frameworks: STL, IPC, multithreading, QT/QML, Sockets, signals/event handling, Google Test, Google Mock
Confidential, Melbourne, FL
Sr. Embedded (IoT) C++ Developer
- Worked as C/C++ developer with Test Driven environment and embedded software applications deployed for marine terminals.
- Port Optimizer is cloud-based software that enhances supply chain performance and predictability by delivering real time data-driven insights.
- Major role as an embedded software developer for advance Projects using C/C++ on RTOS for scheduling, planning and tracking the containers using IoT based solution using x86 platform.
- Preparing Maintenance Manual, System Description Document and other technical and function documents.
- Automation done for generating various kinds of reports by using Perl/Shell scripts.
- Responsible for coding the various components using C, C++ and Python Scripting.
- Developed applications using an openSSL API which can work as encryption interface (API) between client/server.
- Involved in writing optimization techniques for more accuracy of Macros in C/C++, C and C++ routines and Oracle SQL, PL/SQL.
- Work as team developer on a variety of platforms including Windows, RHEL v7, and Linux distribution using C++, QT4, and Boost.
- Designing new software applications in C/C++ to meet business needs.
- Unit testing the programs for correctness against the requirements
- Involved in part of the integration team, which analyzed the builds and used Jenkins for integration.
- Involved in making the Test Plans and Procedures, which drives the Strategies and tools identification, Managing Test design over cross-functional teams. As well created Test Summary Reports.
- Development and Testing, certifying the programs developed on client production platforms for fixing the portability issues, Maintenance.
- Use git repository for development activities and team collaboration.
- Unit testing the programs for correctness against the requirements
Confidential, Atlanta, GA
Sr. C++ Developer
- Test Stand (Front-End tool to verify and validate different models of automotive ECUs). Developed in VC++ using MFC and Win32 APIs on Windows XP, the application provides a UI, which controls electro and electro-mechanical activities of ECU, initiates and controls the CAN, K-Line and LIN communications with ECU. Provides a platform for Test Team to validate ECU lot.
- Designed and implemented exceptionally effective calculation to ascertain information to send crosswise over radios from car to connected vehicles/gear.
- Developing the LIN communication module and LIN's interaction with related CAN commands using VC++
- Developed parsing of ECU commands, captured in xls document, using VC++.
- Designed LIN module class diagrams using Rational Rose.
- Create design and unit test documents for LIN module and share with end-customer
- Participating in discussions with ECU firmware development team and enhancing the tool accordingly.
- Interaction with Test team at plant and supporting them in testing with the tool.
- Debugging Test Stand application directly in plant.
- Capturing ECU measurement data with Vector Canape software and verifying measurement data under different scenarios simulated from ECU load box.
- Creating and modifying ECU command sequences in xls documents that are given as input to Test Stand tool technologies
- Windows XP, VC++, MFC, CAN and LIN protocols, Vector Canalyzer.
- Software design and development of advanced embedded HMI and abstraction layer for GM Sync 3.2. V2 infotainment system.
- Involved in Software design, development and maintenance, Perform design and code reviews.
- Worked with Technologies: QT, QML, C++, QNX and UML.
- Development of high level driver interfaces for miscellaneous analog and digital I/O in C on a UNIX platform utilizing the ClearCase CM tool suite and GNU compiler.
- Debugging driver interfaces utilizing Lauterbach tool suite.
- Development of CAN TX and RX interface software in Vector DaVinci.
- Analyze and edit CAN signals and message lists using Vector CANdb++.
- Maintaining requirements and message lists in VSEM/Teamcenter
- Develop OpenXC applications in Java and C#
- Design, develop, integrate, and test HMI software in a GM car.
- Fixed hard bugs in HMI software
- Extensively used the repositories like Github and SVN.
- Worked with automated configuration management/code management systems or application life cycle management system such as Microsoft Visual Studio ALM.
- QNX audio drivers (TDM interface, S/W decoder), system drivers (SPI, I2C, I2S, HMI interface) development
- Leading end to end execution of project involving review of Shell/Perl/Awk scripts to automate systems.
Environment: C, C++, OOAD, STL, CAN, VC++ Integrated Development Environment and Debug Tools and Windbg. Windows, Windows CE, Freescale Code Warrior IDE, JDGUI SUITE, Xoreax IncrediBuild Mercurial HG, Microsoft Visual Studio, Ultra Edit, PC Lint, ISG Lab SIM 4.0, Google Test, Code Collaborator, Rally and DeereVPN.
- Did programming in C on UNIX platform to contribute to the software project, which automated customized design process.
- Did unit testing of programming projects.
- Wrote a program in C, which converted programmer’s interface between two different types of database.
- Designed and implemented embedded real-time control system software using Embedded C++ coding in RTOS (VxWorks) environment.
- Used Eclipse IDE for Android application development.
- Used Python based GUI components for the front end functionality such as selection criteria.
- Developed GUI using webapp2 for dynamically displaying the test block documentation and other features of Python code using a web browser.
- Responsible for user validations on client side as well as server side.
- Wrote Python scripts to parse XML documents and load the data in database.
- Wrote SQL statements in conjunction with embedded database library to use SYBASE relational database.
- Wrote a program in C, which parses computer logs and then displays the summary in automatically generated HTML files.
- Features development on QTwebkit.
- Wrote a script in Perl, which in conjunction with version control system built a particular version of application.
- Contributed to make file project, which standardized all UNIX make files on the project.
- Wrote documentation for C programs written by myself and other programmers on the team.
- Wrote complete programmer’s documentation for object-oriented drawing system used on the project.
- I was trained on the job in agile software practices and I am familiar with fundamental ideas of Agile practice.
Environment: C, C++, Java, SQL, Android SDK, Android NDK, Eclipse, PL/SQL, UNIX, Linux, Shell Scripting, Sybase, Perl Scripting, UML, Python 2.6/2.7.