- 6+ years of extensive experience in C, C++ on UNIX and Linux platforms and embedded systems and automotive development.
- Worked with Network management in Canalyzer and signal mapping.
- Experience on CAN based protocols and CAN based tools and validation, MODEL BASED DEVELOPMENT, SYsML and UML tools.
- Worked on ECU’s and the clusters and diagnostics, CAPL scripting and design and development of the infotainment for the vehicles.
- Expert in vehicle connectivity and Telematics, Implementing software products and converting them to deliverables.
- Used ADAS and vehicle diagnostics and functional safety, STL containers, Socket programming, Multithreading.
- Worked on Bluetooth, Digital TV, POS Devices, eBook Devices and Industrial Automation
- Experience using Python and Shell Scripts. ISO26262, ISO13400, J1939 and other diagnostic protocols.
- Experience with various testing tools gtest, coverity, cmock. BSW and microcontroller and boot loader programming.
- Used 3GP and LTE, CDMA, WCDMA, GSM/EDGE, TCP/IP.
- Expert in microcontrollers/microprocessors such as 8051, Raspberry pi, ARM, PIC.
- Experience of software development under real - time and integration of software onto hardware platform.
- Bluetooth Protocol: BT 4.0 (Low Energy), BR/EDR, GATT, ATT, AVDTP, AVCTP, AVRCP L2CAP, HCI, RFCOMM, HID and USB HID.
- Understanding of Printed Circuit Board (PCB) schematics and layout designs.
- Fully conversant with Systems Development Life Cycle (SDLC) with automotive software AUTOSAR.
- Worked on DAVINCI developer in AUTOSAR REST API and HIL TESTING.
- Well versed with Agile, Scrum, and Waterfall methodologies.
- Experience with various source control tools like cvs, svn and git/GitHub.
- Used Jira, bugzilla, and other project management tools.
- Experience in Socket Programming, IPC (Inter Process Communication) mechanisms under different OS/RTOS
- Experience in software development of the clusters, telematics, HMI tools ALTIA.
Programming Languages & Scripts: Embeddded C, C++, Python, Shell scripting, Java,
Operating Systems: Ubuntu, RED HAT ENTERPRISE LINUX
Protocols: TCP/IP, UDP, CAN, SNMP, KWP2000, LIN, RS 232, GMLAN, KWP,UART.
Databases: Oracle, Microsoft SQL Server, IBM DB2, SQLite and MongoDB, PLSQL, Cassandra.
Libraries & Frameworks: STL, BDE, IPC, multithreading, sockets, heap allocators, signals/event handling, SOAP web services, Software Design OOP/OOD, Design Patterns, Google Test, Google Mock, Quick FIX,
Version Controls: GIT/GitHub, SVN, CVS.
Tools: pdb, dbx, gdb, CVS, SVN, git/github, Google TEST, Google Mock, CppUnit, cppcheck, Coverity, Jenkins, eclipse, UML tools, MS-Office, JIRA,, kibana,SIMULINK, BLUETOOTH,altia,visual studio.
Simulation Tools: Verifix, Cadence, Pspice, Hspice, Synopsys, Xilinx, dSPACE HIL.
SW Architecture: Autosar
Confidential, auburn hills, MI
Embedded Software Engineer
- Developed embedded software controls algorithms using Matlab/Simulink and, generated auto-code and wrote hand-code when necessary; integrated resulting software into Active Safety software product line.
- Working on the Renesas debuggers and flashing the ECU and the clusters.
- Working the Rcar and the VH-158 microcontrollers which involves the design and the development.
- Worked on the model-based development features.
- Developed and documented test cases.
- Design and Development of Bluetooth Remote, Develop BT manager, BT Voice From bluez stack and provide to STB Media search engine.
- Performed bench/vehicle model-based validation, hardware validation, software validation and calibration of controller.
- Design and development of features for Consumer and Non-Consumer user Interface (HMI) using MISRA C coding standards.
- Worked with systems teams on building the requirements using the designated SYsML and UML tools.
- Worked on the system requirements for the clusters and the telematics. MBD features for the telematics.
- Debugged and developed app for reading and writing Bluetooth Low Energy services on platform, worked with Voice Over GaTT, BLE protocols 4.2
- Developing HMI for TFT with 800x480 screen resolution and Features like warnings popup, confirmations, Trip Screens, Speedometer and Gauges.
- Used Vector CAN tools for testing the list screens and IOD on Cluster.
- HMI development for Instrument cluster based on Renesas D1Mx modules using Altia Design Tool.
- Developing the software using MISRA C coding standards and with static analysis (QAC) tool will clear the defects at first stage of development life cycle then will make sure to produce the clean code.
- Executing the test plans using both HMI tool and CANoe panel/ Vehicle Spy (Manually) using the IDs then analyzing the text, Graphics and animations provided by customer.
- Wrote board support package -battery management system drivers and implementing on board, diagnostics (obd) Implemented the Integration Testing on high level.
- Used proprietary tools to perform Memory and Throughput analysis on software using Adobe photo shop and Illustrator for HMI graphics extraction.
- Involved in discussions with the customers to resolve the requirement issues.
- Involved in creating Snapshots, Sanity reports and Coverity analysis report for every internal release.
- Managed and consulted offshore implementation team, developed and validated firmware and software for the Bluetooth Remote and updated technical documentation. Supported team through the complete SW Development Life Cycle for real-time, embedded SW development.
- Worked on preparing Specification documents and Design documents for customer requirements.
- Optimized controller design and re used across multiple product lines.
- Responsible for the development, implementation, and testing of new Active safety software functionality along with the analysis and correction of defects in existing software.
- Gained experience with Serial Data busses, including LIN, CAN, CAN FD, SENT, FlexRay and Ethernet. And used Vehicle Spy and CANalyzer to log/monitor the CAN traffic.
- Worked with validation and software teams and carried out the CAN based validation and diagnostics.
- Worked on flashing procedures and ECU development software and clusters and infotainment panels.
- Worked on embedded based C coding and debugging clusters and infotainment panels along with the Diagnostics and signal mapping.
Environment: ADAS, Self-Driving, C, Matlab, Simulink, Bluetooth, LIN, CAN, CAN FD, SENT, FlexRay, Ethernet, Bluetooth tools,Vehicle Spy, CANalyzer, HIL, DOORS
Embedded software engineer
- Handle the Automation Projects in connectivity domain.
- Built end to end qualification automation processes that increase product quality. Builds robust and scalable automation frameworks to support product development.
- These frameworks shall be developed for handset testing, web testing, application testing, server testing.
- Analyzes, designs, and develops automation frameworks suitable for applications.
- Establishes test automation strategies and processes, reviews requirements with development teams.
- Worked on the vehicle ECU’s, clusters, diagnostics and softwares, analyzed false failures and false passes in the diagnostics.
- Implementation/validation of DTCs, PIDs and other diagnostic services reviewing& verifying software changes in synergy.
- Testing /debugging with trace32 and solving bugs in software, Worked on the autosar stack and the autosar layers.
- Writing and debugging test cases Worked on serial programming tests (can drivers) using DPS, trace 32, vehicle spy /canoe/Inca
- Working on LIN testing (lin drivers) using vehicle spy and canoe/vehicle spy/Inca
- Working on memory management testing (static, cumulative, adaptable & expandable) using vehicle spy/canoe and trace 32, eclipse/Inca Worked on health monitoring testing (ram, rom, alu, soh, spi, aux rom... Etc.)
- Involved in Configuration management, Technical and design documentation. Design, implementation and test case review. Bi-directional traceability matrix. C, C++ programming in Windows CE operating system
- Conducted and analyzed functional user requirements for developing embedded software using DOORS.
- Worked on the cMake files in the repositories. Analyzed the data collected from the vehicle using playback models and wrote the reports incorporating results and recommended the software changes.
- Supported software optimization in embedded cores to meet real-time performance requirements for time critical ADAS and Self-Driving applications.
- Worked in 3GP and LTE and worked on the socket based based programming using CDMA.
- Worked on Autosar model and worked on Da Vinci Developer
- Worked on HMI tools for the automotive infotainment. Built the application using the rogue wave libraries.
- Deployed Build root tool in linux then configured the system configurations, target options and enabling the Linux kernel later booted the images on to the embedded hardware.
- Installed the cross-tool chain in Ubuntu and complied the U-boot.
- Involved in Development of instrument cluster features in an HMI Modeling toolchain Unit, feature, and functional testing.
- Issued debugging, root-cause analysis, and documentation. Worked on c++ based application using 802.11.
- Programmed the existing GUI’S and worked with the team integration engineers. Coordinated with of a team of HMI developers
C/C++ Embedded Developer
- Requirement analysis, low level design and development of Automotive Infotainment & Telematics products and device drivers.
- Effort estimation and delivery planning. Involved in responding to design change requests.
- Worked on the UML designs for the cluster requirement and the infotainment requiremen\ts.
- Worked on the MBD aspects for the telematics and clusters.
- Worked on Software Development for CAN/LIN Application Development, BSW Configuration PVER Integrator OS Scheduling Integration Tests
- Worked on vehicle validation. Vehicle diagnostic and engineering mode.
- Developed, Installed and modified HMI software as per business needs.
- Wrote the cMake files which had the project configuration.
- Involved in supporting HMI installations, remote access of devices as per requirement.
- Tested and maintained document on HMI operations. And also involved in configuring windows and HMI software
- Fixed bugs in C++ and Java code: program crashes, memory leaks, performance bugs.
- Wrote scripts in Python with Django as the underlying DB interface layer to load some target tables from the new tables in the new DB designed.
- Designed and implemented embedded real-time control system software using ThreadX embedded C/C++ coding in Free RTOS environment.
- Support modules for implementation using PL/SQL Scripts, Unix Shell Scripts and Pro*C.
- Worked on QT and QML version and QT widgets.
- Experience in automation of test cases using Python, C and Shell script.
- Used the HM tools like Altia for the existing GUI’S.
- Experience with google Protobuf, bug tools like Jeera. Used the repositories like GitHub and SVN.
- Programming and Changing UI screens using C++/QT Used multi-threading extensively.
- Implemented RS-232, RS-485, SPI, I2C and other specific communication protocol libraries to communicate microcontrollers and peripherals.
- Improved design using RS-232 communication from development board to PC display software by creating a Windows application to read the RS-232 data that sent data via Ethernet to display.
- Hands on Experience in developing the C code in MPLAB XC8 compiler using different Microchip Microcontrollers like AT32UC3CXX, dsPIC33 etc.
- Designed and developed Embedded Control software using C/C++ in a Eclipse FreeRTOS environment. Experience with Rogue wave library.
- Implementation of GUI interfaces from MFC based application running on Windows to a QT/QML based application running on Linux.
- Programming and Changing UI screens using QT/QML.
- Worked on Autosar software architecture.
- Experience with CI/CD and designing an environment for the CI/CD.
- Used C++ interface/SQL to update/retrieve information from MySql DB.
- Developed embedded software controls algorithms using Matlab / Simulink & State flow to detect the failures of various sensors and actuators used in diesel engines.
- Developed and modified CAN Data Dictionaries using CAN db++ to test the controller software and interfaces between various sensors and control module during the development phase.
- Worked closely with System and Calibration engineers to fix issues in code and to create new requirements.
- Worked on locomotive based design and programmed the GUI using HMI tools.
- Performed unit testing and debugging of the Handwritten/Auto-generated C code using Lauterbach/Trace32 debugger Worked on qt widgets.
- Develop Test cases for various parts of code/model and tested using HIL simulators and ETAS INCA software.
- Fixed problems in code and design with the help of collected data and analyzed it using MDA (Measure Data Analyzer).
- Performed peer review of code, software documents, requirements and test cases developed by the team.
Environment: Control Algorithms, CANdb++, Matlab, Simulink, C, Lauterbach/Trace32, HIL, ETAS INCA, MDA, CAN, CANALYZER NETWORK MANAGEMENT, VECTOR.