Ashok Rajpal
Bartlett, IL *****
***********@*****.***
U.S. Citizen
Electrical Engineer/Computer Scientist
Designed and developed embedded firmware systems in a timely manner, added new features, and maintained them in an agile environment. Worked on independent and team projects. Balanced the technical requirements with business requirements. Mentored multiple developers in embedded systems including. Experience in the full project cycle including requirements gathering from clients, design, architecture, coding/implementation, documentation, unit testing, manual testing, and deployment.
8/16/32 Bit Micro, C/C++/C#, VB/VC++, Java, Python, PHP, JS, QT, DSP, FPGA, CPLD, SPI, I2C,CAN, USB, TCPIP, Bluetooth, BLE, J-1939, Keeloq Encryption, CANalyzer, MISRA-C, ANSI-C, FreeRTOS, PID Control, Linux, Motor Control, Sensors, LabView, MATLAB, Simulink, Stateflow, TargetLink, Schematic Capture, EMC/EMI, PCB, DFMEA, UML, OOP, DOORS, ClearCase, ClearQuest, Polarion, SVN, CVS, Git/GitHub, CI/CD, TDD, MPLAB-X, STM32CubeMX, CCS, Automotive, Construction, Agricultural, Consumer and Medical Instrumentation.
EDUCATION
MS, Computer Sciences and Engineering, Indian Institute of Technology, Kanpur, India
BS, Electrical Engineering, Indian Institute of Technology, Kanpur, India
PROFESSIONAL EXPERIENCE
Indus Technologies LLC, Bartlett, IL Aug 2023 to Present
Senior Software Engineer
To develop Embedded Software for Internet application using Microchip WFI32E01, using Embedded C and Git
To develop University software using Python and MySQL
De Amertek Corporation, Lombard, IL Apr 2023 to July 2023
Senior Software Engineer
Lead the design and development of Embedded Software for Lean Vending Machines for beverages, ensuring efficient and reliable operation of it focusing on scalability, reliability, and security using Embedded C and SVN
Collaborated with cross-functional teams, including software/hardware engineers and product managers, to design and implement new features and enhancements for the Lean Vending Machine firmware, ensuring alignment with project goals and customer requirements
Participated in code reviews and provided constructive feedback to team members to ensure high-quality firmware development practices and adherence to coding standards
Maintained documentation for the firmware design, implementation, and testing processes, ensuring that it is up-to-date and accessible to relevant stakeholders
Intel Corporation, Santa Clara, CA Jan 2022 to Jan 2023
Contract Firmware Engineer (Remote)
Programmed bare metal Elasti Graphics Card in C++ using the Linux Environment, Embedded Software using Git
Wrote assembly language for bare metal DG2 Graphics Card in a Linux Environment
Implemented and optimized firmware algorithms to improve graphics card performance, power efficiency, and reliability.
Conducted testing and validation of Graphics Cards, including unit, integration, and system testing, to ensure the quality and reliability of the firmware.
Induction Innovations, Elgin, IL Jun 2021 to Jan 2022
Senior Software Engineer
Developed Embedded Software for PIC 16F15358 Processor, utilizing its features to effectively control the Induction Heating Machine, ensuring precise and reliable operation using Git
Developed software modules for controlling various aspects of the Induction Heating Machine, including power management, temperature sensing, and safety features.
Collaborated with the quality assurance team to identify and address any firmware issues or bugs, ensuring that the Induction Heating Machine meets performance and safety standards
De Amertek Corporation, Lombard, IL Oct 2019 to May 2021
Senior Software Engineer
Using GUI in Qt, programmed Raspberry Pi to communicate with RF Tag Reader and Medical Locker in Java and C/C++
Created mineral water vending machine in C using FreeRTOS on ARM processor
Programmed lean vending machines for beverages in C on ARM processor and PID algorithm for motion control.
Wrote testing interface for Ice Vending Machine and Heater Controller to facilitate automated testing, ensuring product functionality and reliability
SPX Genfare, Elk Grove Village, IL Jul 2019 to Aug 2019
Senior Software Engineer
Programmed ticket vending Linux software in C for TVM4
Prince Castle, Carol Stream, IL May 2019 to Jul 2019
Senior Software Engineer
Debugged and fixed firmware for industrial bun toaster using QML/QP
Developed testing software for RS-485 Modbus communication using QML/QP
Control Solutions, Aurora, IL Feb 2019 to Apr 2019
Software Engineer
Developed Google Protocol Buffers in C, over CAN interface for Joypad Controller of a Turret on PIC24/32 Processor
Created J1939 CAN Message monitor for Joypad Controller using PIC24 processor
Wrote test plan for BLE based Debug interface for a Stair Lift
Walgreens, Deerfield, IL Jan 2019 to Feb 2019
Software Engineer
Developed TCPIP interface for Electronic Reader Board using Java
Overwatch Development Group, Naperville, IL Dec 2016 to March 2018
Software Engineer
Developed STM32L based voice recorder with GPS, QSPI Flash and Speex Codec for radio
Designed and created C programs for speed control of BLDC motor and I2C communication with UI board for centrifuge, oscillator and stirrer application using TM4C123XXX Processor and CCS
Developed C program for speed control of BLDC motor and to reverse engineer I2C communication with existing centrifuge application
Worked on Stepper Motor controller for a manufacturing jig
Chamberlain Group Inc., Elmhurst, IL Feb 2016 to Aug 2016
Software Engineer
Implemented Keeloq Encryption in PIC16 Assembly Language software for universal RF Mini-clicker Remote for foreign market
Followed agile methodology with 2 week long sprints
Optimal Design Company, Arlington Heights, IL June 2015 to Oct 2015
Software Engineer
Developed control and BLE communication software on PIC 32 with FreeRTOS for virtual reality gaming system
Developed software to control individual and group lightings using cell phone BTLE, Cloud and Wifi.
Chamberlain Group Inc., Elmhurst, IL Feb 2015 to Apr 2015
Software Engineer
Developed PIC16 Assembly Language software for universal Mini-clicker RF remote to pair with Garage Door Openers
Caresoft Global Inc., Burr Ridge, IL March 2014 to Aug 2014
Software Engineer
Developed C interface for TargetLink generated Simulink model code for Sequence Control Manager for Front Suspension unit of CH26
Developed Simulink model for Anti-Tampering Unit of CH18. To interface TargetLink generated C code to the existing project. To design Test Cases for the Anti-Tampering Unit
Garrett Technologies, Northbrook, IL May 2013 to Nov 2013
Software Engineer
Architected and developed Transmitter and Receiver Software in C for RF Communication of a Dog Training Collar and Remote
Using C, developed and maintained Dust Removal system involving PID control of fan speed
Cummins Allison, Mt Prospect, IL Oct 2012 to April 2013
Senior R & D Engineer
Implemented Barcode Reader algorithm on iFX using TI DaVinci DSP Processor in C++
Developed Barcode Reader algorithm in MATLAB
Did timing analysis of DDR-3 and optimized Currency Processing Software on iFX using TI DaVinci DSP Processor
CNH America, Burr Ridge, IL Nov 2011 to Oct 2012
Contract Software Engineer
Maintained HLBios software library for Dozer project
Updated Cluster software in C for Skid Steer Loader on PIC24
Developed Cluster software in C for Fork Lift on PIC24
Maintained Cluster software in StateFlow for Dozer
Developed Boot-loader Loader for SL57 Skid Steer Loader on PIC24
Developed test-bench using NI CDAQ and LabView for Skid Steer Loader and Fork Lift clusters on PIC24
Fenwal Inc., Lake Zurich, IL Dec 2010 to Nov 2011
Contract Engineer
Validated the Avatar-Autopheresis Instrument Phase 5/Phase 6 software in C/Assembly with QNX relating to Motor, Pump, Spinner and Clamps ACD, Return ACD, Rinse and Re-infusion ACD against the requirements in DOORS. Did code verification by inspection for Data Manager, Device Manager and Machine Controller
Validated and implemented DORY protocol for Auto-C plasma exchange system Phase 4 software involving Assembly programming with proprietary OS, code review and simulated tested, created and verified SCRs in ClearQuest
DSR Management Inc., Evanston, IL Aug 2002 to Dec 2010
Program Manager/Sr. Software Engineer
As a manager, mentored, guided, and trained other engineers
In addition to being a manager, was a lead engineer on multiple projects
Interacted with offshore developers
Using C#, calibrated BoardShareSM and USB driver software
Developed BoardShareSM Application software using C# and XML
Designed BoardShareSM Electronic White Board circuit and PCB with Embedded C programming
Tested NIOS-II CAN IP using QuickCAN and VC++
Made route diagrams using C++Altera CPLD Macrocell
Architected and created Web Banner Inventory software using Java
Worked on Controller Area Network (CAN) 2.0B IP for FPGA based NIOS II/MicroBlaze/ARM Cortex-M1 soft processors
Developed of test-bench and testing of CAN 2.0B IP using ModelSim Simulation for ISO 11898 compliance for Aletra, Xilinx and Actel FPGAs
Produced USB 1.1 IP for FPGA based NIOS II/MicroBlaze/ARM Cortex-M1 soft processors
Developed Cyclone FPGA NIOS boards with USB, CAN, Ethernet and VGA Interfaces
Developed test jig for 3D CATSCAN Sensor Board with NIOS-II and CAN Interface
Automotive CMCV/MTV actuator circuit and PCB design with DC Motor and Hall Sensor, Embedded C programming, algorithm simulation and testing using LabView and MATLAB. Implemented PID algorithm designed in Simulink.
Designed and programmed Battery operated Electronic Radon Monitor circuit and PCB using Embedded C
Designed of proof of concept for 3-D Goggles
Designed Circuit and PCB and Embedded C/Assembly programming of Helios Free Space Display
Cherry Automotive, Waukegan, IL Aug 2001 to July 2002
Senior Engineer
Was responsible for the design of SOC board with ST-92F120 Micro and TMS320C5416 DSP with fiber optical sensors and CAN/LIN interface
Designed and tested the hardware to meet EMC and EMI compliance
Developed product specification, DFMEA qualification test plan and documents to track product release
Loaded Dump Tests and Pulse Tests for SOC Board
Vermeer Manufacturing Company, Pella, IA Jan 2000 to Aug 2001
Systems Engineer
Using Embedded C, programmed the Intelligent Display with automatic light intensity control and J1939 CAN interface
Programmed Cellular and GPS based fleet management system for automatic monitoring and reporting of mobile asset usage
Programmed in Embedded C the Satellite communication and GPS based Fleet Management system for reporting of usage and position
Indian Institute of Technology, Kanpur, India July 1982 to Jan 2000
Scientific Officer
Designed and developed battery powered Digital Flight Data Recorder to make precise measurement of various flight angles, pilot stick force and rate gyros and display panel software for recorder using C/C++
Designed and programmed in C the control and data acquisition system for Tri-Sonic Wind Tunnel with PID control of stagnation chamber pressure
Designed and fabricated side sting support system controller for Tri-sonic Wind Tunnel using stepper motor driver
Worked on Wind Tunnel control software on PDP-11 using Fortran 4 and FB-11 operating system