Documente Academic
Documente Profesional
Documente Cultură
Mobile : +91-9177623214
Email : gangadharforu@gmail.com
Professional Expertise
*0 Total 19 Years of experience in the industry ranging from Techno Engineering
Management, Architecture, Scrum Product Owner, Scrum master to Hands on implementation.
Proven experience in Customer and Engineering Management.
*1 Had the experience of building the product development team from rapid hiring,
competency development, setting up delivery logistics, org structure and operational processes.
*2 Adaptable to various cultures, experience of intense interaction with internal team, cross-
functional teams, customer support, marketing and management across different countries
*3 Strong leadership and communication abilities and can motivate team to give their best.
*4 Proficient in C, C++, RTOS, Linux and assembly language for Real time systems
*5 Proficient in Agile software development process. Proven experience as Scrum
Product Owner and Scrum master.
*6 Strong leadership skills; able to technically guide, motivate, delegate tasks, and make sound
decisions quickly.
*7 An organized, detail-oriented, and conscientious self-starter, able to strategize and prioritize
effectively to accomplish multiple tasks.
*8 Ability to carefully understand the architecture of processors and efficiently implement the
code for real-time systems keeping Power and Performance in mind.
*9 Expertise in serial communication protocols (USB, SPI, I2S, I2C etc).
*10 Expertise in Boot loaders, BSPs, Device Drivers, File Systems, Memory Cards, Flash Media,
Power management and Firmware upgrades.
Work Experience
Currently working at Zebra Technologies, Bangalore as Technical Architect (Mar 2016 – till
date) (Engineer Senior Staff, Technical Architect)
7+ years of experience at Qualcomm India Pvt Ltd, Hyderabad as Lead Sr. Engineer,
Engineer Staff, Engineer Staff/Manager and Engineer Senior Staff/Manager (Nov 2008 to
Jan 2016)
3+ years of experience as Specialist at TATA Elxsi Limited, Bangalore (Sep 2005 to Oct
2008)
1 year experience as Project Lead at WIPRO Technologies, Bangalore (Sep 2004 to Aug
2005)
5+ years of experience as Member Technical and Senior Member Technical at ATI
Technologies (formerly CuTe Solutions Private Ltd), Hyderabad.
Overseas Experience
Worked at Qualcomm Sandiego for 3 months and HTC, Taiwan for 1 month
Worked for Canon Inc, Japan for 6 months.
Worked for uPlay technologies, USA for 7 months.
Education
Bachelor of Engineering (Computer Science and Engineering) from Jawaharlal
Nehru Technological University (JNTU), Hyderabad.
2005
Special Diploma in Electronics with Specialization in Computer Science and
1998 Engineering , Govt Institute Of Electronics, Andhra Pradesh.
1
1994 SSC, Board of Secondary Education, Andhra Pradesh.
Proficiencies
Programming
C, C++, Assembly Language
languages
Filesystems, Storage media like Compact Flash, Multimedia Card (MMC)
and Smart Media Card (SMC), NAND/NOR, eMMC, SD, USB, USB Mass
Device Drivers
storage, SPI, I2S and I2C, DMA, Power management, Firmware
upgrades, BLOB bootloader for IMX21 Metroworks Linux
Operating Nucleus, Embedded Linux, Android
Systems
Configuration and Git/Gerrit, Perforce, Rational clear case tool, VSS
Debugging Tools JTAG debugging on T32 simulators and ICDs, JTAG script debugging. CRO
ARM Architecture based SOCs
Qualcomm Snapdragon chipsets: (SD660, MSM8937, APQ8064,MSM8916,
MSM8936, MSM8909, MSM8952, MSM8976 etc.)
Microprocessors/ Qualcomm Baseband chipsets: (MSM6290, QSC1105, QSC1215, QSC6270)
Microcontrollers TI OMAP, TI Davinci
Freescale IMX31/IMX21, ADSP-21xx
Scanner framework development for Zebra’s SE4750, SE4850, SE4710 and SE2100 Scan Engines on Android
Noughat, Oreo and Pie platform - Zebra Technologies
The scope of work includes lead the responsibilities of device driver and framework
development, bringup, feature complete and meet stability, performance and power requirements
for Zebra’s new scan engine SE2100 and SE4710 on Android N, O and P devices based on
Qualcomm MSM8937 and SD660
During this product cycle, I have been working as developer and mentor for the team. My
responsibilities include:
Complete ownership on device framework right from the platform level bringup of device
drivers, framework and ensuring feature complete, stability, power and performance to
meet the PRD.
Understand the functionality, interfaces, command sets for the new scan engine SE2100
and integration with TC25 device based on Qualcomm MSM8937
Development of V4L device driver to interface with the SE2100 imager based scan
engine. The command interface is over I2C and data is over MIPI
2
Development of framework control in C++ for the new scan engine and its integration
with the scanner framework.
Development of features like normal trigger, continuous read, timed-hold and timed-
release, software Picklist, HWAssist, low power modes (Auto low power, hybernate
states), external illumination driver, performance optimizations etc
Scanner framework development for Zebra’s SE4850 Scan Engine on Android L Platform - Zebra Technologies
The scope of work includes lead the responsibilities of device driver and framework
development, bringup, feature complete and meet stability, performance and power requirements
for Zebra’s new scan engine SE4850 used to decode different types of barcode symbologies on
TC8000 Android L device based on Qualcomm MSM8960.
During this product cycle, I have worked as developer and mentor for the team. My
responsibilities include:
Understand the functionality, interfaces, command sets for the new scan engine and
integration with TC8000 device based on Qualcomm MSM8960 Android L
Development of V4L device driver to interface with the SE4850 imager based scan
engine. The command interface is over I2C and data is over MIPI
Development of framework control in C++ for the new scan engine and its integration
with the scanner framework.
Development of features like normal trigger, continuous read, timed-hold and timed-
release, Picklist feature, HWAssist, low power modes (Auto low power, hybernate1,
hybernate2 and standby states), reflective preference, integration with HW Beep,
performance optimizations etc
Complete ownership on TC8000 L device framework and also mentor the SE4850
integration with MC92 device with TI platform.
Board Support Package (BSP): Storage device drivers for Qualcomm Snapdragon Chip sets
(Dec 2013 to Jan 2016) - Qualcomm India Pvt. Ltd
The Project scope includes lead the complete product cycle i.e. Design, develop and Commercialize
drivers for Storage technology modules i.e. eMMC, SD card, NAND, NOR, EFS, RFS for Qualcomm
Snapdragon chip sets.
During this product cycle, I have worked as Storage Technology Team lead where my responsibilities
include:
Analyzing the product requirements of the SOC and the eMMC/SD specifications with respect to the
features and translate them to the requirements of storage Technology Modules.
Work with SOC design team and core IP HW owners and arrive at our driver SW product
features/requirements Estimate the effort during this product cycle, deploy the required resources and
plan the deliverables to meet the milestones of all simultaneous projects during this period.
Technical guidance to team in Design, Development, reviews, pre-silicon validation on
simulation/emulation platform, bring up on silicon, optimizing for performance, stability and power for
final commercialization goals, defect and customization support for licensed OEMs/ODMs till their
Technical Acceptance.
Prioritization and escalation handling in various phases of the project
Board Support Package (BSP): Core platform device drivers for Qualcomm SOCs
(Nov 2008 to Nov 2013) Qualcomm India Pvt. Ltd
The Project scope includes the enablement and commercialization of core platform drivers like boot
loaders, Kernel, system clocks, SPI, I2C, eMMC, Nand, PMIC, Multiprocessor communication, Diagnostic
3
interface, timer services, Wdog, memory management, power management etc.
During this period, I have worked in various roles that include individual contribution as well Team Lead.
My responsibilities include:
Analyzing the product requirements of the SOC and translate them to the requirements of core
platform drivers and Collaborate with individual driver leads to get these requirements delivered.
Identify debug, system performance, power and thermal challenges and develop debug tools,
Trace32 scripts like stack walk through, memory leak detection, ram dump collection, interrupt logs,
starvation, system health event parsers, power states, clock state scripts etc. Collaborate with driver
development team to help them with the above tools and SOC specific debug features.
Coordinate with driver development team, integration and test teams to deliver the tested and stable
core platform software packages for the milestones. This include bug fixing, task/thread priority,
performance and thermal tuning.
Work with the SOC emulation/Simulation team to get the test platform delivered, aligning to
developed features and project milestones.
Bring up all core platform drivers on Silicon arrival, triage, fix and get it fixed the system crashes till
the commercialization and Technical Acceptance from licensed OEMs/ODMs.
During this product cycle, I have worked as drivers team lead where my responsibilities include:
Customization of the boot loader for the target hardware configuration SDRAM, NAND,
NOR, reserved memory, partitioning of NAND, secure boot up, firmware upgrades,
Logo display, debug commands, flash/erase commands etc.
Customization of Kernel for the target hardware configuration in Linux Target Image
Builder(LTIB) to optimize the kernel size and to add the new drivers
Development of mmc/sd controller driver, power management unit i2c client driver,
mmc/sd/USB insert/remove detection, and reserved memory read/writes etc.
Customization of Keypad, Frame buffer, UART, Audio, USB drivers for the target
Power management with different power states such as normal, low-power, deep sleep,
USB charging etc.
Firmware upgrades on NAND flash for Boot loader, Kernel, Root file system with application
with the bad block management techniques using Memory Technology Device (MTD)
interface
Developed ioctls for the miscellaneous functionalities required for the application
Back light adjustment according to the Ambient light level
Boot time optimization
Performance tuning of Virtual memory manager (kswapd, bdflush, limiting the cacheable
memory)
Optimization of Boot loader, Kernel and Root file system for the size
Customization of boot scripts for the auto start of application and switch between
application / firmware upgrades with USB.
Development of Linux device drivers in user mode for Video Capture and Output using
4
Video4Linux drivers, Audio playback and Mixer controls using Open Sound Systems drivers.
Frame Buffer drivers, Bitmap parsing, Font drawing, OSD drivers, Playlist parser, Soft
Power-Off framework, Different play modes: Normal / Shuffle / Repeat, Keypad scanning,
File Systems abstraction for file and directory operations.
Testing and bug fixing
Device drivers for Audio Player and Recorder application on Xtensa SOC, CuTe Audio SOC and
AN2131/ADSP2189
AMD (Formerly CuTe Solutions),
The Project scope includes development, porting and maintain the drivers for Audio player/recorder
application on AN2131Q USB micro controller and ADSP2189. My responsibilities include:
*0 Preparation of RDD, HLD and LLDs.
Drivers Development for Keypad scanning, LCD, ATA interface for Compact Flash (CF), SPI
interface for Multi Media Card (MMC), Smart Media Card (SMC), Flash Translation
Layer(FTL) for Smart Media, IDMA interface for communication between AN2131Q and
ADSP2189, File system management on flash memories (FAT16, FAT32 and VFAT), USB
Interrupt handler and bulk data transfers, Booting from EPROM, Features like
Play/Record/Utilities/Forward/Rewind
5
My responsibilities include:
Preparation of RDD, HLD and LLDs.
Design of command sequence for interaction between Host controller and DSP,
Development of coding for Audio streaming driver on host and DSP, Integration of Audio
streaming driver with compression/decompression algorithms.
Testing and Debugging on board.
Personal Information