You are on page 1of 3

VISHAL THAKKAR

A-203, Supreme Palms, Balewadi, Pune 411045, Maharashtra, India


Mobile: +91 9881552881 E-mail:
vishal.r.thakkar@gmail.com

Summary
Overall 22+ years of experience in Firmware and Driver Development for Embedded Systems. Currently working as a Senior Storage Leader responsible for
NVMe and NVMeOF protocol support.

Career Objective
Seeking a technical role as an Architect/Subject Matter Expert/Technical Lead in the areas of Storage Firmware, Device Driver or Systems programming.

Technical Competencies
Programming Skills:
• Proficiency in C programming
• Working knowledge of C++, Python and Assembly

Operating Systems:
• Linux, VMware ESXi, Threadx, VxWorks, VRTX, WinCE and uITRON RTOS

Device Drivers:
• Linux Low Level SCSI Drive for SAS HBA
• VMware ESXi Native SCSI Driver for SAS HBA
• Linux Nand Flash Controller driver (MTD subsystem)

Processor Architectures:
• ARM9, MIPS, Tensilica and PowerPC

Protocols/Specifications:
• NVMe 1.4, 2.0, PCIe 3.0
• SCSI (SPC, SBC, SAM, SES, SAT) and ATA
• Serial Attached SCSI (SAS) and Serial ATA (SATA)
• USB1.1
• Awareness on Nand Interface Protocols – ONFI and Toggle
• I2C, SPI, UART, ControlNet

Software Tools:
• Source Controls tools - GIT, SVN, ClearCase, Accurev
• Defect Management tools - JIRA, ClearQuest, Mantis, TestTrack

Hardware Tools:
• JTAG debuggers, SAS/SATA and PCIe Protocol Analyser and Jammer, Logic Analyser, Oscilloscope

Professional Experience

IBM Sep 2023 – to date


Designation: Senior Storage Leader

Responsibilities:
Enhance and sustenance of the NVMeOF Host Interface module. Responsible for NVMe TCP and NVMe RDMA implementations.

Seagate HDD India Pvt. Ltd. Jan 2017 – Aug 2023


Designation: Senior Staff Engineer, Enterprise Data Solutions

Key Contributions:
• Implemented support for NVMe drives in the RAID firmware for Storage Arrays. Developed RTOS based PCIe driver for NVMe drives and translated
SCSI commands to corresponding NVMe commands for Mode Pages, Log Pages and TCG Security
• Customized Microchip PCIe Switch firmware and configuration using the chiplink tool for integration in the RAID storage array product. Implemented
Non-Transparent Bridging (NTB) for interfacing a USB to NVMe protocol convertor chip.
• Enhanced and sustained the “RAID” and “Cache” modules of Storage Array firmware.
• Developed a PoC for redundant SAS paths for supporting single ported SAS drives by using the “SAS Phy Based Zoning” feature i n the firmware.
• Developed new features in the enclosure firmware (Threadx RTOS and ARM9 controller) to effectively populate SES pages for enclosures that include 3
levels of SAS expanders.
• Sustained the Drive Manager module of GEM (Generic Enclosure Management) firmware, which complies with the SES Specification. This firmware
provided Active-Passive redundancy using two IO controllers. Drive Management (such as power-up, spin-up, LED controls, etc) had to be coordinated on
the master and slave controllers.
• Derived low level software requirements from Marketing/Product requirements. Architected corresponding firmware solutions.
• Coordinated with vendors of software/firmware components (such as Broadcom and Microchip) for triaging issues and integrating their latest releases.

Western Digital (earlier SanDisk) Aug 2015 – Jan 2017


Designation: Senior Staff Engineer, Enterprise SSDs

Key Contributions:
• Designed and implemented SATA protocol layer (front end) firmware for a 4TB SATA SSD based on ARM9 controller. Implemented fo llowing modules:
• Read/Write (I/O) Path
• Queue Management
• Error Handling
• Interfaces for non-data commands
• Implemented IO performance improvements – Achieved 550+ MBPS Sequential Read throughput and 90K+ Random Read IOPS for SATA 6G SSD
through hardware and software optimizations
• Identified issues in the vendor-provided SATA protocol layer assembly code and the SSD Controller hardware
• Coordinated with the SATA SSD Controller vendor to ensure SATA protocol compliance
• Debugged multiple data miscompare issues

Seagate HDD India Pvt. Ltd. (earlier LSI, Avago) Mar 2007 – Aug 2015
Designation: Senior Staff Engineer, Flash Components Division

Key Contributions:
• Technically owned the complete SAS to SATA Bridge (SCSI to ATA Translation) firmware based on ARM9 controller
• Develop firmware for SAS, SATA and SCSI Error Handling and Task Management
• Support customers for product integration/qualification
• Firmware team’s “Single point of contact” for Test/Reliability and Systems Engineering/Customer Support teams
• Provide trainings to FAEs
• Contribute to and review the “Product Documentation” (i.e. System Application Reference Manual) describing product behaviour, features and
system integration procedures
• Developed Power Management firmware module for SATA SSDs.
• Developed DDR-3 memory driver for SATA SSD Controller.
• Triaged issues in Flash Translation Layer (FTL) and Backend during ROM development and firmware bringup on FPGA and Palladium
• Developed VMware ESXi6.0 Native Driver for LSI’s SAS3 IO Controllers from scratch. Worked closely wi th the VMware Shanghai team to triage issues.
Identified multiple issues in the the VM Kernel Native Device Driver model.
• Enhanced and maintained LSI’s SAS1/SAS2 IO Controller drivers for Linux (RHEL, SLES, OEL) and VMware (ESX4.0, ESX 5.x).
• Developed a module to support SAS Port Virtualization of PCIe based SAS IO Controller
• Developed “SAS Expander” module in firmware, with very minimal feature-support from hardware
• Triaged issues in hardware and provided workarounds in firmware.
• Developing a Nand Flash Controller MTD Driver for Linux

Patni Computer Systems Jan 2001 – Feb 2007


Designation: Senior Software Specialist

Key Contributions:
• Firmware development for ControlNet Bridge and System Redundancy modules used in ControlLogix Programmable Automation Control lers. The
controllers were based on PowerPC controller and VxWorks RTOS.
• Development of firmware to program CPLD in-system using JTAG for an Elevator Controller.
• Porting WinCE 3.0 on SH3 Processor based board. WinCE 3.0 driver development for Touchpad, Display, Ethernet Controller, 4 -Channel Video input.
• Design and development of USB1.1 Host Controller Driver for SH4 processor and uITRON RTOS
• Development of “Generic Service Tool” for WinCE 3.0 based Compaq iPAQ Pocket PC in JAVA using JNI

MICO Bosch India Jul 2000 – Jan 2001


Designation: Systems Trainee

Responsibilities:
Responsible for data mining and reporting using RPG for Shopfloor module on IBM AS400

Viral Electronics Pvt. Ltd. Feb 1999 – Jun 2000


Designation: Research and Development Engineer

Responsibilities:
Design and develop hardware and firmware for data acquisition and control systems.
Patents
• US Patent No. 8020031: System and method for customizing a SCSI error response received from a SCSI target in a storage
network
• US Patent Application No.: 13/164965: Methods and structure for Firmware Upgrade of Devices in a Storage Network.

Professional Trainings
• SATA and SAS by KnowledgeTek
• PCIe 3.0, AHCI and NVMe 1.1 by Mindshare
• IBM PowerPC Architecture
• SAFe - Agile for teams.

Educational Qualification
Diploma In Advanced Computing (C-DAC) from Advanced Computing Training School (ACTS), Pune University Campus
• Month/Year of Passing: Jan 1999
• Score: ‘A Grade’ (70%)

Bachelor of Electronics Engineering from University of Pune


• Month/Year of Passing : Jun 1998
• Score: Distinction (66%)

You might also like