Caterpillar Inc(Embedded Software Developer) Feb 2016-Present Software Engineer for on-board (on-machine) Advanced Monitoring and Diagnostics systems for Machine and large engines applications, to develop firmware using Linux for Caterpillar Telematics (Cellular/Satellite radio, network manager) Working in an Agile Team for delivering next generation on-board Telematics/Information products for all CAT machines. Working on various aspects of information monitoring ranging from GPS communication, remoteflash, Telemetry messaging and monitoring critical information during diagnostics.
ProctorFree, Charlotte (Contract Software Developer)
May 2015-Nov 2015 Design and implementation of tools: Scratch sheet bar code scanner & Face tracking detection and recognition using CLM approach. Research and relate various parameters so as to detect the cheating anomalies and improve the software accuracy Involved in re-designing of core product for ProctorFree. Proctorfree stack: Java Spring MVC | Java Hibernate ORM/MySQL/Postgres | Visual C++ | JIRA Confluence + Bamboo Cl | AWS infrastructure Proctorfree is an online proctoring solution (LMS- integrated) where all the exam session data (audio video etc) is analyzed by the software and all the anomalies are flagged, reported and the exam taker is given a trust score. It’s a new step for ensuring academic integrity.
Accenture, India (SAP Information Lifecycle Management Programmer Analyst)
Oct 2012- Dec 2013 Client-Unilever: Duties included housekeeping and archiving of specific and custom archiving objects and handling SAP Basis administrator responsibilities (team of 5) Client-Ericsson: Did legacy decommissioning of landscape using DaRT and Printlist Archiving (team of 5)
BGR Energy Systems Limited, India (Control and Instrumentation Engineer Intern) June 2012- Sep 2012 Industrial training at Kalisindh, Thermal Power Station in PLC and temperature control systems, under BGR Energy Systems Limited
Quadrant Televentures Limited, India (Internet Service Provider Engineer Intern) June 2011 – July 2011 Adding new Links into ISP Network and troubleshooting the links at various backbone routers and servers Testing of links (tools include PING TRACE) and maintenance of links (Clearing of cache and various log files) Monitoring the network and escalating when network capacity is being reached and when capacity management procedures are ineffective.
Robosapiens, India (Embedded systems Intern) June 2009 – July 2009 Designed Robots using AVR Atmega16 microcontrollers Learned interfacing of peripherals to microcontrollers
Relevant Projects Smart Door Lock: Face Recognition based and Web Enabled IoT project (Raspberry Pi, OpenCV and RESTFUL API) Fall 2015 End to end implementation of MVP smart door lock which has an OpenCV based Facial Recognition application running in the background User can view the camera feed and control the door lock through a web interface and smartphone android application Using this technology user can see who is on the door and control the door lock from anywhere around the world.
Gaze-Tracking, Non rigid face tracking and Head Shape and Pose Estimation using Constraint Local Model (In Progress) Summer 2015 Based on the paper titled “Face alignment through subspace constrained mean-shifts " by “Jason M. Saragih", "Simon Lucey", "Jeffrey F. Cohn" using standard webcam
Identity Card Scanner
Spring 2015 The QRF code on the identity card is scanned and on successful match the encoded information is rendered on screen On successful match of the QRF code, document is scanned using edge detection The image pixels of the edge detected document are wrapped to save a top-down, 90-degree view of the document
Control Area Network (RX63N)
Spring 2015 Two RX63N boards are used to implement the CAN network One board acted as a virtual Electronic Control Unit Second board is used to simulate various signals which are captured by analog IMU sensors interfaced to RX63N
Spring 2015 Design and develop a hierarchical multi-level cache simulator in C++ Implement Write Back-Write Allocate (WBWA) and Write Through-No write allocate
Creating and benchmarking parallel/distributed patterns on high level tools (Parallel Programming) Fall 2014. Seeds framework – high-level Java-based software that self deploys and executes on any platform, local computers or distributed computers. Several patterns implemented including workpool, pipeline, synchronous iterative all to-all, stencil etc Paraguin compiler – C-based compiler directive approach that creates MPI code. Patterns implemented include scatter-gather for a master slave pattern, stencil etc Suzaku framework – provides pre-written pattern-based routines and macros that hide the MPI code. At an early stage of development.
Mobile Device & Smart Appliances in Smart grid (Hadoop, Mapreduce, LXC, XAMPP server, Android SDK) Fall 2014 Smart Appliances scheduling based on locational marginal price(LMP) using Hadoop Mapreduce Android application development with active integration of database servers(used parse.com for cloud database) Two independent servers i.e. Home server and Utility server (Multi node Hadoop server implemented using LXC containers). Query the best schedule with respect to predicted LMP via Mobile application from Utility server or Home server Update the best accepted schedule to both Home server and Utility server via XAMPP server
ITCH market data parsing system (HEW tool chain, TCP, UDP, HTML) Spring 2014 The project consists of a host transmitting ITCH market data information as a broadcast message (UDP packets) The RX63N embedded board receives the data and sends buy-sell requests through TCP/IP packet to host A HTML based Graphical User Interface (GUI) running on the host computer shows the buy/sell requests received
Linux on QEMU ARM emulator (ARM, Linux) Spring 2014 Installing QEMU ARM emulator using CodeSourcery cross compiler tool chain Building Linux kernel image, building of root file system with Busybox and using U-boot embedded boot loader Executed bare-metal application QEMU ARM using U-boot and writing kernel modules
A real-time priority based pre-threaded ‘Tiny web server’ (Network Programming) Spring 2014 Implemented a multi-threaded web server in C to handle multiple incoming requests Used tiny webserver on UNIX platform to host the server and Implemented Producer-Consumer model to handle multiple parallel requests Used POSIX threads and mutexes to implement the Producer-Consumer model.
High tech Green House (AT89S52, Kiel micro Vision-3, ProLoad) Spring 2012 Designed from scratch an Embedded system which will monitor and control the micro climatic parameters of a greenhouse Data acquisition system: Temperature sensor (LM35), Humidity sensor (HIH4000), Light sensor(LDR), Moisture sensor Components: Microcontroller (AT89S52), Analog to Digital Converter ( ADC 0808/0809), LCD (Hitachi's HD44780) Software used: Kiel micro Vision-3 and ProLoad
An Embedded Interface for GSM Based Car Security System (AT89S52, Opto-Isolator Kiel micro Vision-3, Publication) Spring 2012 The microcontroller AT89s52 is the brain of the car security system. The signal from the car is constantly being sent to the controller which is being sensed. On intrusion the controller send a signal to the opto-isolator which is attached to the cell phone which makes a call to other cell phone whose number is stored in the emergency dialing of phone.
Publication -Participation-Achievement’s Published paper “An Embedded Interface for GSM Based Car Security System” at IEEE meet CICSYN 2012 “Accenture Celebrates Excellence” quarterly award in October 2013 Current Member of UNCC Mu Chapter of Phi Beta Delta Honor Society for International Scholars Volunteer for humanitarian NGO “Art of Living” and Tarini Cancer Hospital, Alwar Member of IEEE student chapter 2009 – 2011 Member of cultural club committee (Jaypee Youth Club) at JUIT