Embedded Software Engineer Resume
5.00/5 (Submit Your Rating)
SUMMARY
- Embedded Engineer with 3+ years of experience in requirement analysis, designing, developing, porting and validation Embedded Software for microcontrollers and processors.
- High performance coding in ARM assembly, C, C++, Embedded C
- Developed applications based on Linux Scheduling and Linux Memory management, Linux SysCall, POSIX Multithreading
- Hands on experience in building and bringing up Boot loader (Uboot), Linux kernel, and Root File System, BSP
- Good knowledge in handling the following protocols: I2C, SPI, LIN/RS - 232, CAN, TCP/IP and UDP/IP, Experience working with SDRAM, Flash and EEPROMs
- Component level testing and debugging of various platform circuit boards and cross-functional experience in embedded systems development with further its production & customer support
- Good knowledge of OS concepts and RTOS concepts
- Good Understanding and experience of Data Structures, Algorithms and Complexity Analysis
- Good programming experience in embedded systems with Keil and simulating designs exposure in performing gate-level simulations, verification engineering using Verilog and System Verilog
- Experience using debuggers, oscilloscopes and logic analyzers.
- Experience with IR and RF protocols, including Zigbee, Wi-Fi.
TECHNICAL SKILLS
Programming Languages & Scripts: C, C++, SQL, Perl, Verilog, Python, Tcl, Shell, MATLAB
RTOS: Embedded Linux, VxWorks, Free RTOS
Host Operating Systems: Unix, Linux, Windows, DOS, HP-UX
Configuration Management tools: GIT, SVN, PVCS, Clear Case
Protocols: TCP/IP,CAN, SPI, I2C, UART, RS 232, USB
Debuggers: GNU GDB, CANalyser
Project Management Tools: Rally, Project Communicator, RMS
Hardware: ARM, MIPS, MPC555 Motorola Power PC,x86, NXP LPC 2148
PROFESSIONAL EXPERIENCE
Embedded Software Engineer
Confidential
Responsibilities:
- Implementing a vehicle control module was the main aspect of this position.
- Using 'C' code programming we implemented a real time operating system on the microcontroller by Freescale.
- For firmware we used the RTOS functions to control a real time clock by I2C.
- One method of communication to other modules was through the CAN protocol J1939.
- I implemented an H-bridge to control a motor for outside motion.
- For version control, Tortoise SVN was used for daily activities, and CodeWarrior was the preferred suite for code development
- Development of new firmware in C for traffic management/imaging devices on a STM32 ARM Cortex-M3.
- Created first ever wireless mass firmware upgrade and PC software tool written in C to update traffic signs within minutes using a local PC and existing traffic controller (SBC).
- Reduced company overhead (transport costs and transport time) by eliminating need to return signs to ADDCO for manual firmware updates.
- Modified RTOS (uCOS-II) code to support current products that controlled the new devices.
- Implemented, tested and designed low-level drivers (DMA, ISR peripheral routines, A/D, and TTL serial communication routines) to connected peripherals.
- Developed and maintained revisions of technical documents, which include product specs and firmware, test plans that verify feature functionality of the product.
- Provided technical support/troubleshooting of product failures for existing customers and production personnel.