Post Job Free
Sign in

State University Computer Engineering

Location:
Phoenix, AZ
Posted:
May 03, 2017

Contact this candidate

Resume:

GAUTAM SADARANGANI

www.linkedin.com/in/GautamSadarangani

********@***.*** 1265 E. University Dr., Tempe, AZ, 85281 +1-480-***-****

SUMMARY

Graduate Computer Engineering student at Arizona State University, seeking full time opportunities. Adept at

Firmware and Device Driver Development Embedded System Programming Linux Kernel Programming

Microcontroller Programming C/C++ Android & iOS App Development

TECHNICAL SKILLS

Programming Languages: C, C++, Assembly, embedded C for ARM M0 and M3 series, Java, Swift

Microcontrollers/SOC’s programmed: STM32F series microcontrollers, Intel Galileo board, Arduino & Freescale DSP56858

Tools and IDEs – Git, Vim, Make, Patch, Keil, Coocox, Netbeans, Android Studio, Xcode, Code Composer studio

Relevant Courses: Embedded Systems Programming, Distributed Multiprocessor Operating Systems, Embedded Operating Systems Internals & Computer Systems II (Computer Architecture, Algorithm, Networking), Real-time Digital Signal Processing

EDUCATION

Masters in Science (M.S.) in Computer Engineering GPA 3.85

Arizona State University, Tempe AZ Expected May 2017

Bachelor of Engineering in Electronics & Telecommunications (64.8%) GPA 3.5

University of Mumbai, Mumbai, India May 2015

EXPERIENCE

Graduate Teaching Assistant- Arizona State University, Tempe, AZ Aug’ 16 to Dec’ 16

TA for CSE 335- Principles of Mobile Application Development

Developed iOS apps and answered app development related questions. Conducted lab sessions and graded assignments

Embedded Software Intern- M/S Digital Systems, Mumbai, India Jan’ 14 to Mar’ 14

oDeveloped and debugged Alarm annunciator a monitoring system designed for ships which detected faults using relays.

Programmed USART module in ARM cortex M3 microcontroller to transfer data and display it on a led screen.

Programmed and designed a control/display panel to display faults.

Tested circuit using Oscilloscopes, DMM and traced PCB tracks using Altium designer.

PROJECTS

Gyroscope based ball balancing Game (developed on Intel Galileo board using I2C and SPI) Fall ’15

Developed a Linux driver for measuring gyroscope and accelerometer readings from an MPU-6050 chip using I2C protocol.

Transferred readings to user-side via the joystick input sub-system in Linux, data was used as input for a game.

Created a ball balancing game developed on an 8x8 LED Grid driven by a MAX7219 chip using SPI communication.

Implemented a complementary filter to remove drift from sensor data.

Real-time Image Processing using Freescale DSP56858 Spring ’17

Implemented image processing algorithms such as Segmentation using Thresholding, Quantization, Histogram Equalization and Gray level transforms in C and assembly.

Achieved higher throughputs and lesser code size using effective fixed point(Q15) assembly instructions.

Paper Based Scientific Calculator Using Handwriting recognition Undergraduate capstone project, Spring ‘15

Created a smart writing pad, using STM32F030 Discovery board (ARM 32bit cortex M0) and a resistive touchscreen which recognized handwritten calculations, calculated the results in real-time and displayed it on a LCD screen.

Designed a handwriting recognition algorithm in C which sampled and processed values obtained from touchscreen using ADC. Values compared with templates for standard numerical and mathematical symbols.

Linux Platform driver and SYSFS implementation for Ultrasonic Sensor Fall ’16

Developed a platform driver/device architecture for HC-SR04 ultrasonic sensors attached to the Intel Galileo gen 2 GPIO.

Polled sensor to obtain distance to an obstacle in continuous mode or one shot mode. Used Kernel Threads to trigger device periodically or once. Using Timer interrupt, calculated echo signal high time to measure object distance.

Implemented the SYSFS interface to configure Trigger/Echo pins and display current distance of the object.

Dynamic probing Kernel modules using Kprobe Fall ’16

Developed a device driver to insert a Kprobe in any other device driver, system call, kernel module and retrieve current variable values at that point (breakpoint). Examined object dump to generate address of the probe line to be passed to Kprobe.

The probed code is interrupted using INT3. A pre & post handler is run to retrieve variable values. Original code then resumes

Peer to Peer File Transfer application using Centralized architecture Fall ’15

Developed a multi-threaded peer to peer file transfer using centralized server using Socket programming in Java.

Implemented TCP-like reliability using acknowledgements and message fragmentation on UDP protocol

Used UDP protocol to query for files and peer host address from central server and used TCP for sharing files between peers.



Contact this candidate