Senior Software Engineer Resume
4.00/5 (Submit Your Rating)
SUMMARY:
- Dedicated, dependable senior software engineering professional with expertise in designing software application using C++.
- Expertise in using Object Oriented programming tools such as UML, STL and BOOST. Also has expertise in multithreading, Client/Server application and low level driver development.
- Excellent team player and works well with minimum supervision. Good leadership skill with ability to lead, motivate and stimulate others to achieve goals and inspire change.
BACKGROUND INCLUDES:
- Full life Cycle Development (SDLC)
- Device driver development.
- Real - Time Software development using different RTOS
- IPC (Inter process communication)
- Memory Management and RTOS task Scheduling.
- HW/SW integration.
- Critical System software development using D0-178B standard and FDA standards
- ARM, PowerPC, Xilinx and other micro-processors.
- CPU management and task scheduling
- Scrum master.
- DICOM Standards.
- Board Support Package and board bring up.
- DSP Knowledge
- Socket programing.
- Protocol development expertise.
- POSIX multi-threading.
- Algorithm development.
- Wireshark, TCP dump for network monitoring.
- Working in highly regulated environment
- Documentation for different government standards (FAA, FDA).
- Agile and Waterfall development methods.
- Documentation for FDA 510K process
- Design Patterns.
TECHNICAL SKILLS:
- C++
- C
- Java
- Python
- C#
- .Net
- Ada
- PC Assembly
- VxWorks
- Linux
- QNX
- Green Hill
- UNIX
- DEOS RTOS
- Windows
- QNX RTOS
- Clear Case
- SVN
- DOORS
- Rational Rose
- Jira
- Visual Studio
- MFC
- GitHub
- Google Mock
- AFDX
- AR INC 429
- USB
- TCP/IP
- UDP/IP
- UART
- CAN
- RS-232/422
- Zigbee
- SPI
- Google protocol buffer
PROFESSIONAL EXPERIENCE:
Senior Software Engineer
Confidential
Responsibilities:
- Responsible for developing new features and fixing bugs in current RH(Robot Handle) part of ASML Lithography instrument. Software developed in Red Hat Linux and Solaris using C/C++.
Senior Software Engineer
Confidential
Responsibilities:
- Responsible for the development of multiple subsystem applications and drivers for Abbott’s blood screening machine which simultaneously analyze numerous blood samples provided.
- Some of the duties include requirement gathering design, implementation, unit tests and HW/SW integration.
- Used QNX and Eclipse based Momentics IDE.
- Used google protocol buffer for communication between QNX application and Windows application. We strictly follow Agile methodologies and create user stories.
- Developers are responsible for creating documentation for their work. We go through detailed code review and unit test before committing any software to version control. We use object oriented C++, STL and boost libraries.
Senior Software Engineer
Confidential
Responsibilities:
- Responsible for developing (design, documentation, coding) Host application software for PET/MR modality.
- Host software is responsible for handling MRAC (MR Attenuation correction), Protocol Management and Table control. Used VxWorks and WindRiver Workbench.Used DICOM standards for Image sharing.
- Designed and developed PET/MR protocol management which is responsible for controls the system during a scan process. New PET/MR system is composed of both PET protocols and the MR protocols from the existing products. Used C/C++ for this subsystem.
- Designed and developed table control system of PET/MR which controls the table movement of simultaneous PET/MR scans. Used C/C++ for this subsystem.
- Developed control system algorithm (PID based) to stabilize hardware fluctuations during the system operation. This algorithm brought the system to 0.5% fluctuation rate when the requirement was only 5%. Patent work pending for this algorithm. Used C++ for embedded and Visual C++ and MFC for user interface. Used Visual Studio and VC++, QT, to develop a radiation monitoring tool for field technicians to monitor the radiation level in real time. Used OpenGL for user interface development.
Senior Software Engineer
Confidential
Responsibilities:
- Responsible for the development of Flight Control System (FCS) Software for UAVs. FCS controls the flight path and other critical mechanism to balance the aircraft while it is flying. And also responsible for developing Touch Screen driver and USB host protocol that resides in EFB (Electronic Flight bag) that run on DEOS RTOS. This development process followed DO-178B standards.
- Developed Flight Control System for UAV (Unmanned Arial Vehicle).
- This complex software control the flight of the aircraft. Multiple microprocessors were involved in the development for FCS such as MPC 5500 and Xilinx FPGA. Used C according to DO-178B standards.
Software Development and Verification Engineer
Confidential
Responsibilities:
- Responsible for the full life cycle of software development for Integrated Network Server Unit for Airbus A400M, which include analyzing system requirement, creating SRD, SDD, TC/TP, other software verification documents and implementing software applications using C and C++.
- Designed and developed ISS (Installation Support Service) for (INSU) Integrated Network ServerUnit of Airbus A400M. This is a multi processer application: one side in GHS integrity using C and the other side is Linux using C++ with OO Design. Linux side C++ Installation System used
- Responsible for developing OS Support Service, this is a kernel program responsible to starting up the SCI side of the Integrated Network Server Unit. Partition Scheduler in OSS assigning CPU time slices and priority to each application and also allows each application in SCI to start up based on its priority during the boot up. This SW part meets the DO - 178B standard.
Software Engineer
Confidential
Responsibilities:
- Responsible for designing, developing, testing software and creating documents for data link protocols such as CDL, j1708 and j1939.
- Responsible for requirements analysis, software design, software implementation, interface between software layers, and development/execution of test procedures.
- Created library level software that used by different kinds of applications in caterpillar machines.
- Used VxWorks RTOS and PowerPC microprocessors for this project. We used C and C++ languages for this developments. My achievements in Caterpillar are listed below.
Software Engineer
Confidential
Responsibilities:
- Responsible for embedded software development and testing for DSL modems driver that uses
- Motorola/Freescale 6800 and flash memory. Used Unix host and Cross-Compiler to develop real-time software in VxWorks RTOS. Trouble shooting customer issues and fixing bugs were a big part of the job