We provide IT Staff Augmentation Services!

Embedded Software Engineer, Ca

2.00/5 (Submit Your Rating)

SUMMARY

  • Broad knowledge and success in model based, model driven, and functional embedded software development, debugging, and maintenance.
  • Success wif all phases of life cycle including requirements gathering, software design & modeling, coding, and unit testing.
  • Adept at concurrent/distributed processing, digital signal processing, controls, real time operating systems, and wired/ wireless media communications.
  • Outstanding interpersonal and communication strengths leveraged to train users, troubleshoot system issues, and ensure total client satisfaction.

TECHNICAL SKILLS

Computer Languages: C, C++11, assembly (TI 320F2407, Intel x86, Atmel 8 - bit), Python

Real Time OSs: VxWorks, QNX, MicroC/OS-II, AMX-86/80, Embedded Linux

Processors: TI TMS 5x/2x/MSP-430, ARM, PowerPC, Microchip, Intel 386, 8051

Network Simulation Tools: MagicDraw C++, Rhapsody C/C++, Visio

Communication Protocols: TCP/IP, SPI, CAN, I2C, USB, Bluetooth, WiFi

Debuggers: Spectrum Digital 510, 515 JTAG, Trace-32, MPLAB-ICE, GDB

Unit Testing: TESSY, VectorCAST / Cover, CMock /Unity framework, CppUTest

Code Management: Atlassian, Visual Source Safe, Rational Clearcase, GIT/SVN, Perforce

Programming: Embedded, Client-Server, DSP, Controls, Pthreads

Issue Tracking: DOORS, JIRA

Bus & Protocol Analyzer: CATC USB Chief, WireShark network packet analyzer, Beagle I2C/SPI

Code/Document Reviews: ClearQuest, Code Collaborator, Swarm

Device Drivers: UART Virtual Device Driver, SPI, USB, I2C

PROFESSIONAL EXPERIENCE

Confidential, CA

Embedded Software Engineer

Responsibilities:

  • Worked on Radio Adapter which is an interface to turn on/off Radios. Did UML design and coded in C++. Did unit testing using TDD/CppUTest. Used Visual Studio 2015, Atlassian SCM tools.
  • Did unit testing of a VNS treatment medical device firmware in C/MSP430/ERTOS using TESSY unit testing tool. Setup lab environment to collect integration test results. Worked wif Visual Studio 2010, IAR embedded workbench for MSP430 and SVN.
  • Coded in C to extend functionality of 3G and LTE communication for an embedded RFIC SoC. Used TDD/CMock, Unity framework for unit testing.

Confidential, CA

Embedded Software Engineer

Responsibilities:

  • Allocated Software/Hardware requirements from system requirements.
  • Wrote requirements for Flash, EEPROM, external Watchdog, SPI and application level software components in DOORS.
  • To generate SRS/SDD documents, developed software architecture 4+1 views model. Created use case, participant architecture, service architecture, class, activity, state transition and data modeling UML diagrams. Drew teh diagrams in MagicDraw OOAD modeling tool.
  • Used Eclipse/Linux IDE and SVN for source code.
  • Had training on writing requirements and DO-178C.

Confidential

Senior Firmware Engineer

Responsibilities:

  • Worked on building IEC 61508 Standard - Safety Integration Level 3 Input/Output Hardware modules and to develop firmware to support these modules.
  • Responsible for moving configuration and safety data from application layer to safety layer using VxWorks POSIX based services - STM ARM Cortex M4, GPIO configuration, interrupt driven.
  • Supported hardware and software requirements reviews, firmware requirement reviews and firmware design reviews and product design safety reviews. Worked in SDLC - V process environment.
  • Wrote software requirements for new product by reading existing code of legacy product.

Confidential

Network/Simulation Software Engineer

Responsibilities:

  • Developed test scenario to evaluate custom network models and custom network configurations.
  • Used PacketShaper dat acts as TCP proxy to increase TCP traffic throughput over networks wif long delays and limited bandwidth.
  • Configured router model to set network interface priority.
  • Using OPNET network modeler, implemented an acknowledgement mechanism for an IP traffic network consisting of ground station, satellite, and UAV node model. Set ACK-related data fields in teh transmitted packets. Maintained lists of pending transmit ACKS for packets received and packets waiting for ACKs to be received.

Confidential, MI

Embedded Software Engineer

Responsibilities:

  • Did coding/testing of unit tests in C for heart pump controller software running on three processors TI F28335, TI F28035, and Microchip dsPIC33F. Tested various software modules, state transition diagrams for CAN protocol messages, and microprocessor peripherals such as CAN, SPI, I2C, McBSP, DMA, Watchdog, Flash and EEPROM. Used VectorCAST/Cover for static analysis (MC/DC). Wrote Software Unit Test Plan describing test cases. Did requirements modeling using Hatley/Pirhai methods.
  • Worked wif TI CCS 4.2 IDE, Microchip MPLAB IDE, Visual Source Safe and DOORS.
  • Developed embedded software based on deterministic scheduler, C, TI TMS320F2808 controller, read sensors/switches, flash memory and SPI bus for Onboard Oxygen Generating System. Implemented requirements, fixed defects and enhanced functionalities for fault diagnostics and data storage in flash memory.
  • Used Beagle protocol analyzer, SVN SCM tool, TI CCS, XDS-510

Confidential, CA

Real Time Software Engineer

Responsibilities:

  • Implemented device discovery using Microsoft Bluetooth API on PC. Configured NS-LMX9838 Bluetooth chip for communication wif TI MSP-430 controller through RS-232 UART.
  • Implemented data acquisition using off-chip ADS1258 ADCs by TI MSP-430 controller. Transferred teh data to Redpine Signals WiFi chip through SPI. Transmitted teh data wirelessly to PC using WiFi network protocol.
  • Enhanced DO178B based Boeing 787 Braking Control and Management, flight control software running on TI TMS320F2812 and Freescale MPC565 as follows:
  • Updated requirements and PDL to match code. Documented code as per DO-178 standards. Wrote code in C for new requirements.
  • Used TI Code Composer and Green Hills MULTI debugger for software development.
  • Performed code inspection of CAN communication module.

Confidential, CA

Software Engineer

Responsibilities:

  • Wrote requirements and design documents for telemetry, air data and control actuation systems of UAV missile flight control. Drew UML diagrams in DOORS/Analyst and Visio.
  • Coded unit test cases for serial communications and linear algebra math functions for C/VxWorks based missile embedded software. Wrote SRS for navigation module based on Kalman filtering. Fixed defects. Pointed out where code could be improved.
  • Developed requirements model using functional techniques. Used AxiomSys CASE tool. Did some architecture modeling.

Confidential, CA

Senior Embedded Software Engineer

Responsibilities:

  • Coded in C and assembly of TI TMS-2407 to enhance functionalities and to fix defects of Uninterruptible Power Systems (UPS). Wrote integration test cases and release documents. Conducted design and release meetings. Supervised integration test team. Software is based on interrupts, proprietary preemptive multitasking operating system, DSP filters, PID feedback controls and RS-232 communication.
  • Enhanced PC utility programs in Visual Basic for communicating wif teh UPS over RS-232.
  • Designed software using object oriented methodology for a DNA analysis device. Created sequence, collaboration, activity and class diagrams in UML using Rational Rose.
  • Coded robot position calibration program using C++, QNX RTOS and QNX Curses API.

Confidential

Senior Software Engineer

Responsibilities:

  • Designed software modules to retrieve data from peripheral boards viz. IGBT, Phase Lock Loop, Status Manager, Analog I/O and Communications. Used AxiomSys CASE tool for data and control flow diagrams. Coded teh modules in C for TI TMS320 C40 processor.
  • Wrote PDL and coded in C to regulate bus voltage of embedded AC/DC switching power conversion system based on PID feedback controls. Teh software runs on a dual DSP processor VMEbus boards which communicates wif other identical systems.
  • Designed communication among power producing units using RS-422 protocol.
  • Wrote PDL for controlling Chopper functions in Voltage regulation and frequency regulation modes of power generation.
  • Enhanced embedded software. Tested test cases for 900 Amperes Solid State Interrupter running on Intel 196, 16 Bit Controller.
  • Wrote PDL and coded RS-232 serial communication Virtual Device Driver (VxD) in Intel 386 assembly for Microsoft Windows 3.1.
  • Enhanced X Windows GUI based Digital Audio software in C++.

Confidential, CA

Senior Software Engineer

Responsibilities:

  • Gathered requirements for an editor program which customizes a drug list of a three-channel infusion pump. Coded in C++. Used Windows 3.1 API calls for user interface.
  • Maintained firmware of teh three-channel pump using AMX-80 RTOS, C and Z-80.
  • Simulated selected functions of teh infusion pump on teh IBM PC using AMX-86 RTOS and C.
  • Coded Field Maintenance Software (FMS) for teh infusion pump using C and RS-232 library for teh PC. FMS retrieves logged data from teh pump and tan decodes and displays teh data on teh PC. Provided context sensitive help, DOS critical errors and disk full handling.

We'd love your feedback!