We provide IT Staff Augmentation Services!

Senior Staff Software Engineer. Resume

4.00/5 (Submit Your Rating)

Il, Usa

EXPERIENCE SUMMARY:

  • 10+ years of working experience in design, development and testing of embedded, multi threaded applications using C, C++, Assembly Language Programming, on LINUX and Windows environment.
  • 7+ years of experience in the development of Battery Charging and Fuel Gauging Software for all the mobile phones shipped by Motorola.
  • Managed and coordinated cross site engineering software development team which was responsible for the delivery of Battery Charging and Fuel Gauging Software drivers.
  • Experience working on Linux Kernel (Android) for Power IC drivers. Developed/Ported of Android Kernel/drivers to Qualcomm / TI (OMAP series) and other proprietary embedded platforms. Involved in Board Level Bring - up including Bootloader and Linux Kernel on several platform architectures.
  • Deep understanding of UNIX & LINUX internals and configuration.
  • Thorough understanding of Android internals including driver integration with Android framework and kernel to user-space interaction.
  • Experience with embedded debugging tools me.e. JTAG. Ability to read serial bus traces, board schematics, usage of an oscilloscope and logic analyzer. Review HW schematics and provide feedback.
  • Good experience in programming using STL and MFC Library. Programming with Win32 API.

TECHNICAL SKILLS

Prog. Languages.: C, C++, Java.

Android: Chipsets.Qualcomm, Nvidia, TI.

SoC’s: .Snapdragon, Tegra, OMAP.

Microcontrollers.: TI MSP430G, STM8S/L, Microchip PIC series, Intel 8051.

Peripherals: .ADC, COMParator, TIMER, I2C (Single/MultiMaster), UART, SPI.

Protocols.: ATMEL 1-wire, Dallas 1-wire, S/PDIF, SIP.

Operating Systems: .Linux/Unix, Android (all flavours till date), WinMobile.

UML tools.: Microsoft Visio, XML (Data exchange).

Tools.: GIT, ClearCase, ClearQuest, gdb.

Scripting Languages: .VBScript, Tcl/Tk, shell scripts.

Other Experience: with building Free BSD/Linux Kernels.

PROFESSIONAL EXPERIENCE

Confidential, IL, USA.

Senior Staff Software Engineer.

Responsibilities:

  • Architecture, Requirements analysis, Design, Software development & debugging, Test / Regression suite, Support & Maintenance
  • Modifying existing code, generating new code, and migrating code to new kernel releases while conforming to Linux open source community guidelines.
  • Creation of User Space Daemons as well as Linux Kernel drivers to support Battery Charging and Fuel Gauging.
  • Point of contact for POWER IC software issues encountered during factory HW builds.
  • Management of an offshore team (Size 4) to ensure software delivery on time with high quality. Assistance with training, mentoring and driving team work to come up with quick solutions.
  • Key features / Projects worked on:
  • Dead Battery Recovery.
  • Charge Only Mode: Allowing the phone to charge at a faster rate.
  • Accessory detection: Using USB Battery Charging Specification 1.2 and Quick Charge 2.0 specification for USB high-voltage dedicated charging port (HVDCP).
  • Battery Management: Using Fuel Gauge or BMS algorithm to estimate State of Charge and exporting all necessary parameters to the OS.
  • Wireless Charging: Developing wireless charging drivers for Qi (WPC) and PMA Compliant Wireless Charging solutions.
  • Authentication: Ensuring only genuine accessories manufactured by Motorola or a license of the technology can successfully authenticate and provide the unique SW experience depending on the type of accessory connected.
  • Battery Health Monitor: Reporting ‘Aged Capacity’ and summing charge cycles for data gathering reasons
  • Log Parser tool: Developing and maintaining the SBCM tool used to provide data for charging analysis, battery meter analysis, etc.
  • 1-wire bus driver: Developing Dallas 1-wire driver to communicate over 1-wire bus to the Battery EEPROM.
  • Battery NVM data: Defining process to provision Battery NVM data in the factory and supporting retrieval of NVM data.
  • Working around Hardware issues in Software.
  • Code Refactoring: Identifying opportunities to refactor code.
  • Contributing to knowledge base documents.
  • Representing the kernel team in SW CCB and triaging the CR’s on daily basis.

Confidential Getzville, NY

Embedded Software Engineer.

Responsibilities:

  • Developed the test software in VC++ which validates the APIs and functionality of the Dialogic Media Gateways. This tool would perform automated or regression testing.
  • Created test modules in VBScript, which interface with the engine to extend system testing coverage of Dialogic System Releases.
  • Used XML for data exchange.
  • Provided Graphical User Interface (GUI) to provide easy access to all SIP Scenario Scripter features.
  • Use Wireshark network analyzer tool for SIP call flow graphs.
  • Utilized Clearcase for the version control during development.

Confidential, London, UK.

Embedded Software Engineer (Consultant)

Responsibilities:

  • Developed application program to manage all hardware peripherals and application program to communicate to master controller using embedded C on Windows platform using Archimedes complier & VC++ editor.
  • Developed drivers for hardware peripherals like ADC, DAC, RS232 & RS485 using Embedded C on Windows platform using Archimedes compiler & VC++ editor.
  • Designed & developed communication protocol between Host to MCF5272 (TCP/IP) & MCF5272 to ADUC841 using C on uClinux-2.4.19.

Confidential

Software Engineer (Consultant)

Responsibilities

  • Interfacing the sensors with PIC module using RS232 protocol.
  • Programming the inbuilt ADC in PIC16f873.
  • Interfacing the PIC with GSM module using AT commands.
  • Testing the interaction of the GSM module with the centralised database system.

We'd love your feedback!