Embedded Software Engineer Resume
Sunnyvale, CA
OBJECTIVE
- I aspire for a challenging position in a professional organization where I can enhance my skills and strengthen them in conjunction with organization’s goals.
SUMMARY
- Over 7 years of Experienced Professional with expertise in Model - Based Algorithm & Software development, Automatic code generation, Embedded software development, and Microprocessor and Microcontroller interfacing.
- Proficient in Embedded C and C++ programming.
- Expertise in modeling tools like Matlab/Simulink, Stateflow, and Targetlink.
- Good working knowledge in standards and protocols like CAN, LIN, FlexRay, GM LAN, TTP, TCP/IP, RS232, RS422, AR INC 664, AR INC 429, AFDX, etc.
- Expertise in using CAN based tools such as CANalyzer, CANoe, CANape, etc.
- Good working experience with CANalyzer software tool and used the tool to analyze the data transmission in automotive vehicle security system projects.
- Experienced in creating test environments to run automated tests and verification.
- Performed Functional, Unit and Subsystem testing.
- Experience in GNU Tools (gcc, gdb), Configuration Management Tools (ClearCase, CM Synergy) and Requirement Management Tool (DOORS).
- Have very good exposure to software development life cycle like Feasibility, Design, Coding, Testing, Implementation and Maintenance.
- Experienced in using various testing tools (dSpace, EmbUnit/CUnit, IBM RTRT) and code check standards (MISRA, CMMI).
- Passionate worker to contribute individually and as part of a team.
- Ability to learn and master new technologies with good analytical and problem-solving skills.
TECHNICAL SKILLS
Hardware: 8/16/32-bit Microprocessors and Microcontrollers (Texas Instruments, ARM, Freescale)
Peripheral devices: (SPI, I2C, UART, RS232, RS422, CAN, ADCs, DACs, PWM)Instrumentation (Spectrum Analyzer, Network Analyzer, Oscilloscope, Multimeter).
Programming: Matlab, Embedded C, C++, and MP LAB.
Design & Simulation: Simulink/State flow/RTW, PSPICE, ORCAD, CANalyzer.
Scripting: Python.
Software: MS Visual Studio, MS Office (Word, Excel, PowerPoint, Outlook).
Systems: Windows, Linux/Unix, Mac OS.
Other: Code Generation with Targetlink, IBM Rational Doors and Clearcase, dSpace system.
PROFESSIONAL EXPERIENCE
Embedded Software Engineer
Confidential, Sunnyvale, CA
Responsibilities:
- Involved in the development of Software requirements and functional specifications for new Advanced Driver Assistance and Chassis systems.
- Involved in the design of Advanced Driver Assistance systems using modeling tools such as Matlab, Simulink/State flow/RTW.
- Developed software in C following MISRA C/C++ coding guidelines.
- Involved in developing software interfacing modules for automotive communication protocols such as CAN, LIN and FlexRay.
- Involved in every step of SDLC process like requirement analysis, designing, coding, testing, releasing and providing product maintenance, and documentation at each stage.
- Execution of test vectors for the given Module and give a root cause analysis if there is any deviation between code and Model. If there is a deviation then provide solution to fix the deviation needs to be given.
- Performed system-level integration of the software.
- Gained experience in advanced features like ACC, LDW/LKW, RCTA, etc.
Embedded Software Developer
Confidential, San Diego, CA
Responsibilities:
- Designed CAN messages to receive the vehicle data from various modules of the vehicle and then implemented the logic to transfer this data from the vehicle to mobile applications.
- Implemented the communication between GPS and vehicle using TCP/IP socket programming.
- Developed software in C following MISRA C/C++ coding guidelines and unit testing of the implemented code is done using CUnit.
- Development of test cases, manual execution of test cases for Functional, Regression and Integration Testing.
- Involved in every step of SDLC process like requirement analysis, designing, coding, testing, releasing and providing product maintenance, and documentation at each stage.
- Decreased software time-to-market by following standard software design methodologies.
Embedded Software Developer
Confidential, Atlanta, GA
Responsibilities:
- Involved in product specifications development for Vehicle Telematics, In-Vehicle-Infotainment System, Remote Keyless Entry, Passive Entry Systems, Start-Stop Button and Steering Wheel Control Switches.
- Designed Transmission control software using modeling tools such as MATLAB/Simulink/State flow.
- Fixed Point Auto-code generation for production purposes using dSpace Targetlink to reduce the degree of error.
- Tuning the fixed point settings using TargetLink Auto scaling tool.
- Hand-coded algorithms using C/C++ programming language MS Visual Studio .
- CAN Driver integration and maintenance.
- Software Build Integration, Maintenance & Release.
- Involved in every step of SDLC process like requirement analysis, designing, coding, testing, releasing and providing product maintenance, and documentation at each stage.
- Tracked and maintained requirements traceability matrix using DOORS to ensure all system level requirements given by the customer are met during release.
Embedded Software Engineer
Confidential
Responsibilities:
- Designed and remodeled various Powertrain features using simulation and model baseddesign methods such as Matlab/Simulink/State Flow.
- Gained experience in V-model software development and documentation.
- Conduct data capture, data analysis for both auto-coded and non auto-coded C code using RTRT, INCA etc.
- Execution of test vectors for the given Module and give a root cause analysis if there is any deviation between code and Model. If there is a deviation then provide solution to fix the deviation needs to be given.
- Achieved expertise on Unit Testing, Functional Testing (SIL, MIL, HIL) and Regression Testing on the embedded software written for Electronic Engine Management modules whichincludes Application layer, Engine On-Board Diagnostics and core features (physical layer, air features, engine features).
- Gained experience in high level hardware and software debugging using oscilloscopes, logic analyzers, and simulators.
- Performed system-level integration of the software.
Embedded Software Engineer
Confidential
Responsibilities:
- Designed a PWM driver that generates static configurable pulse train of various duty cycle and frequency to keep the alarm signal module active in the automobile.
- Used LIN protocol to connect Body Control Module (BCM) and the alarm signal module.
- Designed low-level device drivers (USB device drivers/video/display/ touch device drivers), media gateway (audio filtering and media transport protocols).
- Developed firmware components on Embedded Linux environment including Kernel drivers (audio/video interfacing drivers, USB interfacing drivers, audio backend drivers for noise cancellation).
- Responsible for the development of cross-platform GUI controls using C/C++ shared between Windows and embedded targets.
- Derived interface design requirements and conducted design reviews and code reviews.
Embedded Software Developer
Confidential
Responsibilities:
- Designed a Card Reader using 16-bit PIC24F microcontroller that detects the card and identifies the person using the card providing him an access to enter a building or a room.
- Part of the team that designed a CAN based Vehicle Collision Avoidance System.
- Part of the team that designed a CAN based Vehicle Security System.
- Software was written using C language on multiple platforms.
- Gained knowledge and experience on CAN protocol, and on using the CANalyzer software tool.
- Worked with hardware architectures (FPGA and DSPs) and interfaces (USB, SPI, I2C, and UART).
- Responsibilities include identifying the design specifications and planning the design and test requirements of the project.
- Cyclic redundancy checks have been monitored to functionally test the vehicle automotive system.
- Documenting the design procedures and creating a user manual.
- Hands on HW/SW integration experience for design verification and validation.
- Decreased software time-to-market by following standard software design methodologies.
- Participated in the full development cycle from design, coding, validation, documentation and maintenance.
Embedded Systems Intern
Confidential
Responsibilities:
- Designed a Traffic Signal Controller using 8086 microprocessor that requires assembly language programming.
- Developed a Real-Time Clock using 8051 microcontroller to communicate with the LEDs to display the time on LEDs.
- The responsibilities included developing, debugging and unit testing of the developed code.
- Used coding methods to enhance program execution and functionality.