Sei sulla pagina 1di 3

Gaurav Rathi

1.gaurav.rathi@gmail.com Ph: 562-676-6103


C, C++ Developer

Summary:

Embedded Software developer with industry experience working on ARM


architecture.
Proficient in ARM specific ARMv6-M and ARMv7-M architecture.
Familiar with ARM assembly.
Emphasis on writing highly optimized code C using optimization techniques
specific to the ARM architecture.
Industry experience in development of C, C++, VC++, UNIX, LINUX .
Extensive expertise in C++ development with desktop application
development, delivery and maintenance.
Deep Knowledge in C, C++, Embedded C, Data Structure Using C/C++.
Working experience on Agile practices and object oriented design and
templates and STLs in C++.
Involved in Complete SDLC life cycle Designing, Coding, Testing, Debugging and
Production Support.
Experience working with various compilers, debuggers and IDEs.
Experienced with software quality process. Experienced in Unit
Test/Regression/System Testing.
Excellent analytical, problem solving, interpersonal and communication skills.
Ability to work as independent and team member in challenging and cross
platform environment.

Education:

Master of Science Electrical and Computer Engineering from Wayne State


University Detroit MI with GPA 3.0.
Bachelor of technology in Electronics and communication from RGPV Bhopal
India with GPA 3.1.

Technical Skills:

Languages

C, C++, VC++,ARM Assembly, Matlab, SQL.

Operating Systems
Methodologies

Windows95/98/NT/2000/XP/Vista/7.
Scrum / Agile .

Embedded Tools

Oscilloscope, Logical Analyzer.

Communication Protocols

CAN, I2C, SPI, and RS232.

Other Tools

Excel, MS Office, MS Visual Studio

Professional Experience:
Controltech Corporation, Bondurant, IA. May 2013 to present.
Responsibilities:

Develop embedded software application using 32 bit ARM cortex


microcontrollers using C and assembly for animal barn controllers.
Write context switching software for in house lightweight RTOS in ARM
assembly.
Write boot loader to load and enable firmware upgrades in the field without
needed JTAG or SWD, but by using In Application Programming (IAP).
Work on communication protocols such as CAN (CANOpen), RS232, RS485, SPI.
Create automated and manual test for embedded firmware.
Troubleshoot new and existing software and hardware designs.
Take projects from blueprint to production state.
Work with team members on hardware design of controllers.

Environment: C, C++, GCC, Eclipse based IDEs, Linux, Visual Studio, Qt, Windows
development tool
John Deere, Urbandale, IA September 2012 to March 2013
C, C++ Developer

Responsibilities:

Develop, maintain and upgrade software for John Deeres Tractors and Combines
using C++.
Design, development, and unit, system and integration testing of application
software.
Graphical User Interface module design, development and unit testing.

Design, Implement, Test and Support the application using C, C++.


Design, Code and Unit Test plan reviews of modules for enhancements and
maintenance.
Work in Agile environment as a part of team.
Collaborate with senior engineers, Product Owner to ensure timely completion of
projects.
Involve in troubleshooting, development, testing and enhancement of existing
John Deere software.

Environment: C++, Agile, Visual Studio, Windows development tool.


First sense Medical Products, Pontiac, MI May 2012 to Aug 2012
C, C++ Developer
Responsibilities:

Develop, create, and modify GUI components, utilizing C, C++, OOP, STL.
Design and customize software for customer end user to optimize operational
efficiency.
Confer with systems analysts, engineers, programmers and others to design
system and to obtain information on project limitations and capabilities,
performance requirements and interfaces.
Modify existing software to correct errors, to accommodate new hardware and
improve performance.
Analyze user needs and software requirements to determine feasibility of design
within time and cost constraints.
Develop and perform software system testing and validation procedures,
programming, and documentation.
Develop C++ application on cross-platform Qt framework.
Create desktop applications that interact and control hardware such as thermal
camera, Microsoft Kinect, robots.
Work independently to fulfill software requirements provided by senior
developers.

Environment: C++, VC++,Qt, Windows,Linux/Unix.

Potrebbero piacerti anche