Senior Linux Software Engineer Resume
SUMMARY:
- Senior Linux developer with application programming, kernel mode drivers and network programming skills. 11 years of programming skills in C on Linux environments.
- 13 years of total software development experience in Embedded and Telecom domain.Proven record for delivering high quality, complete embedded products in Medical Instrumentation, Consumer Electronics, Data and Home networking.
- Extensive experience working with open - source solutions under Linux platforms (includes but is not limited to Ubuntu, Red Hat and SUSE).
- Advanced design and development expertise in following areas.
- Application software development, Multithreaded programming on Linux and GUI programming using GTK and Qt (4+ years)
- Network Programming, socket programming, layer-2 and layer-3 network protocols (TCP/IP, UDP) and technologies (3+ years).
- Linux device driver programming and debugging, kernel mode device drivers like (ADSL modem drivers for USB, PCI and USB-serial converter drivers) (3+ years).
- Strong in Linux Internals (network, process, and memory management systems), TCP/IP stack and IPC’s in Linux.
- Exposure to object oriented software design and development in C++ (2+ years)
- Proficient, detail-oriented, self motivated with a track record of successful delivery as an individual contributor and technical team leader. . Possess experience collaborating with local and global cross-functional teams.
- Work experience in United States is 3+ years in Texas and South Bay Area.
TECHNICAL SKILLS:
Programming: C, C++, Qt, GTK, UNIX shell scripting, knowledge of Python.
Development/Debugging Tools: RPM, gdb, valgrind, kgdb, strace, ltrace, GNU Makefile, Auto-conf tools, Packet Sniffers, tcpdump, wireshark, tcpreplay, full cluster lifecycle configuration shell - pcs,Wikis, Yum, Yast, Zypper, Source Navigator, Doxygen, VMWare, knowledge of CodeWarrior, JTAG debugging, cross-compilation toolkits particularly scratch box.
Protocols: USB, TCP/IP, UDP, HTTP, SNMP, IPMI, ATM, PPPoE, WAP, 802.11, PCI.
Software Engineering Tools: CVS, git, Clearcase, Perforce, svn, VSS, JIRA, Jenkins, HPQC, Agile practices, Microsoft Project.
Databases: SQLite
OS/Architecture/Distributions: embedded Linux (ARM, x86), Enterprise Linux (variants such as RHEL, SuSE and MontaVista), CentOS, Ubuntu and mobile operation systems such as Symbian.
PROFESSIONAL EXPERIENCE:
Confidential
Senior Linux Software Engineer
Responsibilities:- Development of Unified container management API library for Huawei Technologies.
- I worked on development of unified container management (UCM) library providing docker/LXC like features using Control Groups, libct container APIs, namespaces to sandbox processes from one another and controlling their resource allocations. The UCM library is aimed to for environments that require resources to be tightly controlled, but which do not require the hardware resources of full virtualization solutions.
Skills: C, RPC, git, CGroups, quota, namespaces, Docker, libct APIs, Linux container /light weight virtualization technology.
Confidential
Senior Linux Software Engineer
Responsibilities:- Design and development of High Availability framework for Huawei Technologies
- Designed and developed graceful restart module used to restart application processes faster without reestablishing dynamic process data and achieving faster recovery and reducing or eliminating traffic downtime. Developed around 15K Loc in a period of 2-3 months.
- Implemented several multi-threaded applications which use this framework.
Skills: C, Linux, pthreads, libpcap, Linux IPCs - System V shared memory.
Confidential
Senior Linux Embedded Developer
Responsibilities:- Sustenance of hardware drivers and GUI for Life Technologies Ion One Touch product.
- Worked on hardware comprising of AT91SAM9G45 controller board, centrifuge, heater and other fluidic assembly. Created developer test plans, tested low level C drivers namely - GPIO, Motor, Pressure sensor I2C driver, Solenoid pump, Syringe pump, Heater and TEC.
- I worked on few bugs fixes of driver and one-touch GUI which is a C++ GDK application running on the One-touch Instrument.
Skills: C, C++, low level hardware drivers on ARM9 microprocessor.
Confidential
Technical Lead
Responsibilities:- Porting and Sustenance of Passive Capture Appliance (PCA) module in Tealeaf’s Customer Experience Management software on RHEL 6.x and SuSE 11 .
- I ported PCA code by making changes to various network layer functions and significant modifications in packaging and logging framework. Modified/Added around 250 lines of code in 6 weeks. Also worked on significant feature enhancements such as TLI support and Delete TLI hits.
- In addition to above hands-on tasks, contributed technically on the proposals, task divisions, estimations, tracking deliverables and client interaction (weekly status reports and calls).
Skills: C, Network programming, TCP-IP, tcpdump, wire shark, RPMs, Shell Scripting, Jira, svn, Jenkins.
Confidential
Project Lead
Responsibilities:- Development of applications on Verizon’s FIOS TV Series of Set Top Boxes.
- Developed various UI components like List box and pop up wizard as part of FIOS project which involved development of a hybrid (QAM+IP) solution for the Motorola DCT2500 and DCT6400 series of set-top boxes using the MoCA technology.
- As a part of the DVR (Digital Video Recorder) team also developed Recorded Programs UI, Series Manager UI and Series Scheduler wizard. Worked on development of MultiRoom DVR features like Recorded Program listings, Series Manager.
- This project was carried out at client/Verizon location in Dallas, USA. There was great deal of interaction with the usability and testing teams required during the project.
Skills: C/C++, CodeWarrior, Clearcase, JTAG debugging, VxWorks, exposure to home-networking technologies - MoCA, MPEG 2.
Confidential
Senior Project Engineer
Responsibilities:
- Development of the Platform Instrumentation (PI) module of the server management that included set of software tools built in server boards to provide real-time monitoring and alerting of server sensors. Was involved in the following activities 1.New feature development, 2.Defect resolution 3.Testing of implemented features for Server management software releases for various server platforms.
- I worked on integration of SNMP subagent in the PI software.
- For ATCA project, developed the following components of the SSM multithreaded daemon:-1. SSM main module 2. The lower layer module interfacing with the OpenIPMI Library. 3. Scripting to install and package SSM software. I also did the changes to OpenIPMI's RMCP Server code to support sending IPMI commands over LAN. I designed the Shelf Manager's failover approach and did code a Proof of Concept for the same.
- For PFM project, I developed the following Modules - 1. PFM Main module. 2. Fault Detection Layer. 3. PFM Hardware Interface Layer. 4. OpenIPMI Library - This is used for getting the sensor events. Also implemented fault Handlers for GiGE errors, Watchdog timer expiry event, sensor events.
Skills: C, VSS, RPM, gdb, Unix Shell scripts, DDK and SNMP, Platforms: Linux, Windows2000, Netware, Windows 2003 Server, Open UNIX, Makefile, CVS, gdb, RPM, multithreading programming, OpenIPMI library and Linux IPCs