Consultant (full Time) Resume
PROFESSIONAL SUMMARY
- An avid Embedded System and Data Science enthusiast, seeking a new challenge to fuel my fervent passion for cutting edge technology by developing next - generation embedded systems and as a data scientist interpreting teh data to discover solutions and opportunities. Proven record of successful work both independently and as a team member.
- I is seeking job in Application, System/Embedded software and Data Science where I can apply my ideas using C and Python.
TECHNICAL SKILLS
Programming Languages: C, Erlang
Scripting Language: Python, Shell Scripting, sed, awk
Hardware Platform: Pandaboard, Raspberry, 8-bit Microcontrollers
Tools: GNU tools(gcc, gcov, gdb), Valgrind,Jupyter
IDE: Source Insight, Pycharm, Eclipse
Custom Tools: omapconf, dcetst/dcitst
Database: MySQL, SQLite, Oracle, Teradata
Version control system: Git, SVN, Jira & Confluence
Operating Systems: Linux, Android, Windows, Unix
Technologies: OpenSSL, POSIX APIs, IPMI, SNMP
Concepts: OS Concepts, Data structures, Multi-threading, Linux Device Driver, Understanding of RTOS
SDLC Methodologies: Agile, Waterfall
PROFESSIONAL EXPERIENCE
Consultant (Full Time)
Confidential
Responsibilities:
- Ownership of low level ETL data processing module. Using using C, C++ and Linux, I designed, developed and maintained software modules for sales application for retail giant Loblaw Company Ltd.
- Responsible for transitioning teh sales application from an older Unix platform which was about to decommission to a new Linux platform.
- Created an infrastructure in RedHat Linux environment for development.
- Ported teh application in new environment
- Added feature specific test cases through Python scripts into Test suite.
- Improved efficiency of existing software stack written in C/C++ by reviewing code, rectifying performance as well as security issues.
- Sustained existing products by fixing bugs and enhancing teh quality which involved managing modules written in C++.
- Delivered projects on time meeting teh strict deadlines using Agile/SCRUM methodology.
Technology Used: C, C++, Python, GCC tool chain, Database (Oracle & Teradata)OS Concepts, Data structures, Multi-threading, SQLite, POSIX APIsEnvironment: Linux & Unix
Firmware Senior Engineer
Confidential
Responsibilities:
- Ownership of sensor details provider multi-threaded process. I designed and developed system software modules and features for Embedded Linux based Remote Access Controller for servers using C and Linux.
- Created proofs of concept for innovative new feature using C and SQLite library for teh same Linux based platform.
- Added a X.509 certificates parsing feature to a multi-threaded certificate manager process.
- Integrated GCC tools, e.g. code coverage (gcov) & profiling (gprof) system
- Added feature specific test cases through Python scripts into aBVT (Automated build verification Test) suite
- Improved efficiency of existing software stack written in C by reviewing code, rectifying performance as well as security issues.
- Sustained existing products by fixing bugs and enhancing teh quality which involved managing interface modules written in C++.
- Delivered projects on time meeting teh strict deadlines using Agile/SCRUM methodology.
Technology Used: C, Python, GCC tool chain, OS Concepts, Data structuresMulti-threading, SQLite, POSIX APIs, JIRA, Jenkins, Yocto, C++, Autoconf, Coverity, Valgrind, Memcheck
Environment: Embedded Linux
Senior Software Engineer
Confidential
Responsibilities:
- Ownership of TvInfraLooper module which includes whole SDLC for dis component. Using C/C++, designed and developed a synchronization mechanism (TVinfralooper) to teh threads in a multi-threaded process on an Android based Smart TV platform.
- Ownership of Python test suite which included whole SDLC for dis suite. Created a Python test suite for various components (e.g Antenna, IR Remote) in Android TV platform
- Design and develop a unified layer (ADC, I2C and SPI infra layer) which consists of libraries, to provide application layer an interface to access underlying hardware on Android based platform for Smart TVs.
- Maintained bootloader(uboot) code
- Develop and Enable debugging features including netconsole for Marvell SoC based Android TV.
- Maintaining teh device drivers for various peripheral devices.
- Prepare system design specification and unit test document
- Participate in Code and unit test reviews
Technology Used: C, C++, Python, OS Concepts, Data structures, Multi-threadingPOSIX APIs, Linux Device Driver, Tombstone, GCC tools, JIRA, Jenkins, Android make
Environment: Android
Senior Software Engineer
Confidential
Responsibilities:
- Worked closely wif other departmental peers to develop high availability solutions for mission-critical applications in C.
- Worked closely wif customers to efficiently resolve issues.
- Worked wif project managers, developers, quality assurance and customers to resolve technical issues.
- Consolidate teh software source code in C by reducing memory leaks by using Coverity, gdb, valgrind, and memcheck
- Served as point-of-contact for client engineering team.
- Collaborated wif client engineering team members to create application’s system analysis based on client requirements.
- Maintaining kernel and various device drivers for peripheral devices.
- Improved system performance by making adjustments and resolving bugs.
- Reviewed code and corrected errors
Technology Used: C, GCC tool chain, Linux, Android, Android Make, JIRA, Jenkins, Pandaboard, omapconf, Linux device drivers, Coverity, Valgrind, Memcheck
Environment:Linux, Android
Associate Software Engineer
Confidential
Responsibilities:
- Design and develop a system software (GeoAmida Testjig) to provide a GUI based interface to test peripheral hardware on GeoAmida POS.
- Design and develop system software (Wi-Fi network management setup) for Embedded Linux based Point of Sale device (GeoAmida)
- Design & develop a comprehensive SDK for teh POS, to make our customer & others capable of making their own application on GeoAmida POS.
- Maintaining kernel and various device drivers for peripheral devices.
- Customized teh bootloader’s(uboot) interfaces for teh safe mode, network boot.
- Implemented a GPIO based driver for battery fuel gauge meter chip which could read from & write to teh chip by emulating I2C protocol.
- Based on general requirement in POS/Micro Finance domain, created a reference application for GeoAmida which exposes SDK APIs and act as a sample app for teh client engineers.
- Provide training to teh client engineering team to get familiar wif GeoAmida SDK.
- Work as application developer on 2D Games (wif entry level physics engine) and Chat client implementation wif Erlang language.
Technology Used: C, Erlang, GCC tool chain, Linux, Linux Device Driver, OS Concepts, Data structures, Multi-threading, POSIX APIs, uboot, I2C protocol, SVN, Marvel SoC based H/W platform, Micro-controller(8051/52), mtd-utils