Harshavardhan Suhas Bokil

+91 9890008583

harshav_b@rediffmail.com


Career Summary:



Employment History:


Persistent Systems Private Limited.

Bhageerath, 402, Senapati Bapat Road
Pune – 411016, Maharashtra, India.

Tel: +91 (20) 2567 8900
Fax: +91 (20) 2567 8901

Senior Team Lead

Aug 2006 – Till Date



Company Profile:

Persistent Systems is a 16 year old company focusing exclusively on Outsourced Software Product Development. Services offered across the life cycle of the product - from R&D to Development, Testing, Support and Professional Services.


Job Profile:

Responsible for R&D in telecom (Mobile computing) domain at Boot Loader and BSP level. Also involved in ‘Proof of Concept’ type of internal and external projects.


Responsibilities:


Projects:


Significant achievements:







eInfochips Limited.
"Mahadeo", 17/4-5, Off. Karve Road,

Erandavane, Pune 411 004,

Maharashtra, India.

Tel: +91-20-2544 2394
Fax: +91-20-2544 5314

Project Leader

Sept 2004 – Aug 2006



Company Profile:

eInfochips business focus in three main technology areas: ASIC Design, Embedded Systems and Application Software. The facilities at offshore development center in India, is equipped to handle complex and critical development projects. The infrastructure at eInfochips is one of the key components in making the AOM (Amplified Offshore Model) a successful Global Delivery Model. At e-eInfochips, the Offshore Development Centrers are a virtual extension of the client's development team.


Job Profile:

Job involved leading client / in-house projects from front. Major responsibilities include Requirement Analysis, Estimations, Design, Implementation, Test suite preparations etc.


Responsibilities:


Projects:



Amiga Development India.

(Formerly known as Ruksun Software Technologies Pvt. Ltd.)
32/2, 6th floor, Ashoka Plaza,

Vadgaonsheri, Pune- Ahmednagar Road

Pune - 411 014, Maharashtra, India.

Phone: +91-20-40038000

Senior Software Engineer

Jan 2004 – Aug 2004



Company Profile:

ADI has a proven track record in the outsourced application development sector. ADI has over a decade of software product and outsourced project development experience and offers you specialized services.


Job Profile:

Worked as a Team Member – System Group, under an ODC for a USA based client; worked in the field of mobile computing (WinCE based platform development).


Responsibilities:


Projects:


Cybage Software Pvt. Ltd.

West Avenue, Kalyani Nagar,

Pune 411006, Maharashtra, India.


Ph: +91-20-66041700/ +91-20-66044700

Fax: +91-20-66041701

System Analyst

Aug 2002 – Jan 2004



Company Profile:

Cybage Software Private Limited was founded in 1995 to develop innovative productivity tools for the world market. Cybage diversified from product development to providing offshore software development services to the US IT industry. Cybage specialize in the implementation of what is popularly termed as the ODC model (Offshore Development Center). Cybage services include software development, maintenance, re-engineering, software testing and technical documentation.


Job Profile:

Sales server development and maintenance, wireless point of sales terminal development, system Analyst.


Responsibilities:

Implementation, testing


Projects:


Cruise Controls Pvt. Ltd.

796/3, Ketkar Road,

Opp. Kamala Neharu Park,

Pune - 411004, Maharashtra, India.


Ph: +91-20-5677672

Fax: +91-20-5677673

Software Developer

Oct 2000 – Aug 2002




Job Profile:

Device driver, Application development for Telecom products.


Responsibilities:


Projects:


Project Summary:


Project 18

Linux mobile platform

Description

Middleware development over Linux kernel 2.6.x for mobile phone platform. Middleware components include addressbook, calendar, messaging, phone applications etc. This is the current project, where the development will be continued for phone middleware such as messaging, browser etc.

Environment

Embedded Linux, C, idl, xml, dbus IPC, gtk, glib etc.

Team Size

8

Role

Project Leader

Responsibilities

Requirement Analysis

Planning

Design

Coding

Offshore-onsite co-ordination

Integrated testing

Release Management

Technical Work

Participated in Product requirements specifications and Engineering requirements specifications for address book and calendar phone applications.

Designed API for address book and calendar middleware.

Analyzed open source packages for address book and calendar middleware.

Integrated EDS (Evolution Data Server) package ported for dbus IPC instead of CORBA, into the platform.

Modified API functions in the open source package based on the requirements specification.

Migration of address book and calendar database migration from Berkeley DB library to sqlite3 library which is an open source package, designed for database user in embedded systems.

Developed test applications to test address book and calendar middleware.

Integrated the test applications in QMTest framework which is open source.

Documentation – Design documents, Project plan, Test plan, API specification, Programmers guide for address book and calendar middleware.


Project 17

VxWorks OS migration from 5.5 to 6.2

Description

BSP, driver migration for a MIPS based platform, ideal for IP phone.

Environment

C, VxWorks, Tornado.

Team Size

2

Role

Project Leader

Responsibilities

Requirement Analysis

Planning

Design

Coding

Offshore-onsite co-ordination

Integrated testing

Release Management

Technical Work

Analysis of build systems.

Analysis of changes of VxWorks® 5.5 and 6.2

Migration of existing build system based on the changes in VxWorks® installation, distributed by WindRiver®

Compilation of base operating system and board bring-up with VxWorks® 6.2.

Execution of existing test applications with VxWorks® 6.2 for various device drivers including Ethernet switch, I2C, SPI.

Execution of existing test applications for BSP which includes hardware abstraction layer.

Bug fixing and modifications.

Provided Supported for IDE (Integrated Development Environment) build method along with command line build. (The IDE has been changed from Tornado for VxWorks® 5.5 to Workbench for VxWorks® 6.2). Also, updated the user guide document.


Project 16

BSP development for Linux and VxWorks.

Description

BSP development, core OS porting, driver development for various module such as Ethernet switch, SPI, I2C, NAND flash etc, assembler development for an on-chip, special purpose microcontroller. The platform is based on MIPS, ideal for cable modem. The client develops SoCs based on various processor architectures such as ARM and MIPS in various domains such as Broadband communications and mobile platforms.

Environment

C, VxWorks, Tornado, GNU tools, WindRiver Workbench etc.

Team Size

6

Role

Project Leader

Responsibilities

  • Requirement Analysis

  • Planning

  • Design – Ethernet Switch Driver, Hardware Cryptographic Device Driver, integration with CCI in VxWorks and OCF in Linux, Device Driver for Hardware Network packet filter, Device Driver for I2C, SPI etc

  • Coding – Assembler for Packet Filters, Ethernet switch driver

  • Offshore-onsite co-ordination

  • Integrated testing

  • Release Management

Technical Work

  • Documentation – Requirements specifications.

  • Modifications in the boot loader for the previous version of SoC, based on the memory map and flash storage technology. (Provided support for NAND flash, modified the memory mapped register definitions, initializations etc).

  • Worked on FPGA based boards instead of released boards, as the hardware and software development went in parallel.

  • Modifications in the device drivers I2C, SPI, USB 1.1 based on the changes in hardware design.

  • Development of device drivers – Ethernet Switch.

  • Provided WindML® compatibility to character LCD, graphical LCD and Keypad drivers.

  • Design and development for hardware Ethernet packet filter – Assembler for the special purpose microcontroller which is a Windows XP / Linux based application, API for configuration and programming, user level API for the same in target Linux OS, API for VxWorks based applications.

  • Developed DMA interface for various device drivers in the platform.

  • Provided support for IDE build method along with command line build.

  • Test planning for the entire platform.

  • Test applications development for drivers and middleware.


Project 15

Windows CE OS porting on an ARM based SoC.

Description

Windows CE porting, driver development, Boot Loader and OAL development on an ARM based PC. Driver development includes Ethernet, SPI, I2C, Keypad, and Video processing Engine. OAL enhancement include communication link to an on-chip DSP core.

Environment

C, Microsoft Platform Builder, Windows CE.

Team Size

12

Role

Technical consultant and reviewer

Responsibilities

  • Requirements

  • Planning

  • Design

  • Reviews


Project 14

Windows CE OS migration from .NET to 5.0

Description

This project involves migration from windows CE 4.2 to 5.0 on a MIPS based VoIP phone platform, driver migration for various SoC modules including Ethernet switch, SPI, I2C, Keypad, Display etc. The project scrapped due to hardware enhancement.

Environment

C, Microsoft Platform Builder.

Team Size

2

Role

Project Leader

Responsibilities

Scoping of the project

Requirements


Project 13

USB Computer


Description

This project involves developing a USB slave device to boot Windows XP. The OS image stored on the device serves as the boot image.

Environment

C, IAR embedded workbench for ARM.

Team Size

13

Role

Module Leader

Responsibilities

Design

Coding

Integration testing.

Project Planning and Estimation.

Design and Implementation.

Test suite automation design.

Technical Work

Design and development of USB 2.0 slave driver for mass storage deivice type. Developed in C language, over ARM based microcontroller.

Design and development of control logic for multiple writes to the flash device.

Design and development of interface provided by a FPGA logic to read and write to flash storage device.

Design and development of flash management logic.



Project 12

J2ME porting onto a configurable processor.


Description

This project involves porting J2ME onto a configurable processor. It involves linking KVM, the architecture dependant portion of J2ME with a single threaded runtime for the configured processor. A multithreaded OS is purposely avoided in order to facilitate the end user develop 'speedy' applications for the processor.

Environment

C, Assembly, GNU, Linux Red Hat 7.3, and Solaris

Team Size

6

Role

Project Leader

Responsibilities

Feasibility Study and Requirement Analysis.

Project Planning and Estimation.

Design and Implementation.

Test suite automation design.

Technical Work

Compilation of J2ME (CLDC configuration)

Integration of J2ME with the hardware abstraction layer of the Xtensa LX processor.

Development of processor simulator in C using a library which is distributed by processor vendor.

Execution of J2ME main function from the boot loader provided by processor vendor.

Development of simple Java applications over J2ME.

Execution of test applications and generation of performance benchmarking data.



Project 11

SoC simulation and SQA


Description

This project involves simulating various SoC. The client develops configurable processor cores. With each core generated by the end user, a simulation library is distributed to simulate end SoC. The project is divided into 2 phases - SQA of the library and Simulation of various SoCs.

Environment

C, Assembly, GNU, Linux Red Hat 7.3 and Solaris

Team Size

3

Role

Project Leader

Responsibilities

Self-training and Requirement Analysis.

Project planning, test planning.

Test designs, coding, porting and delivery.

Technical Work

Development of SoC simulators using a library provided by processor vendor.

Test planning, test case definition for all the API provided by the library, based on systemC.

Execution of test applications over simulated SoC and test report generation.



Project 10

KVM/IP


Description

A PCI board solution developed for one of our client, with device driver on Linux to handle various requests to KVM / IP PCI card which captures video signals from the Linux based server and transmits the video data after compression on the IP based network. At the same time, the card sends keyboard and mouse data to server which client has captured from the Java Applet.

Environment

C, Embedded Linux, GNU tools

Team Size

12

Role

Module Leader

Responsibilities

Design

Coding

Integration Testing

System testing

Release Management

Technical Work

Development of PCI based DSP card device driver in Linux.

Design and Development of http server over Linux.

Support for multiple server management capabilities, user access rights management etc.



Project 9

Platform – PocketPC


Description

This project involved modifying Pocket PC according to client needs.

Environment

C, WinCE, Microsoft Platform Builder

Team Size

1

Role

Sr. Programmer

Responsibilities

Power Management applet modification.

Porting Legacy applications onto the new platform.


Project 8

Platform Development – Sierra


Description

This project involved an ODC, for a client making platforms for Mobile computing devices. This project involved Windows CE based “Reference platform development”, to minimize the time to market for next products in line, by reusing the build configuration and source code. The development board was based on XScale based SoC.

Environment

C, Assembly, WinCE, Microsoft Platform Builder

Team Size

6

Role

Sr. Programmer

Responsibilities

Self-learning - WinCE as a platform.

Board bring-up with Windows CE 4.2.

Integration of device drivers provided my Microsoft with the platform.

Modifications in the PDD (Platform Device Driver) based on the architecture details of the SoC such as memory map.

Integration of third party compact flash driver and file system (supplied by the vendor).

Integration of WinCE test kit and test execution for drivers. Bug Fixing for the whole platform.


Project 7

Account Betting System


Description

This project was under an offshore development centre in India, involving enhancements in an Online gaming system. The major components of this system include Online Sales server, Point of Sales terminals, Database to maintain records, remote backup site etc. This particular project involved extension of Point of Sales terminal to a web based interface from where players can place a bet. This involved changes in the online sales server, database. Also, it involved development of a new web based application.

Environment

C, Sybase, OpenVMS

Team Size

6

Role

Module Leader

Responsibilities

Requirement Analysis.

Design, coding and unit testing on OSS side.

Integrated system testing.


Project 6

Wireless Point of Sales Terminal – Prototype


Description

This project was under an offshore development centre in India, involving enhancements in an Online gaming system. The major components of this system include Online Sales server, Point of Sales terminals, Database to maintain records, remote backup site etc. This project involved developing wireless point of sales terminal for online gaming system. The purpose was not it integrate this type of terminals into the system, but to demonstrate the capability as a part of Research and Development.

Environment

C, Sybase, OpenVMS

Team Size

3

Role

Module Leader

Responsibilities

Requirement Analysis

Design, Coding, unit testing and integrated testing.


Project 5

Set-up - Online Gaming System


Description

This project involved setting up the online gaming system exactly as per studied onsite at offshore development centre at India. The intended use was for the further activities.

Environment

C, Sybase, OpenVMS

Team Size

12

Role

Domain Expert

Responsibilities

Requirement Analysis.

Module Interconnections such as ABS web, Database, RPC server, Online sales server, communication processors etc



Project 4

Training - Online Gaming systems


Description

This was the first assignment under an ODC. The project involved initial learning plus bug fixing at client end and training the rest of the team off shore.

Environment

C, FORTRAN, OpenVMS

Team Size

1

Role

Sr. Programmer

Responsibilities

Code analysis and reverse engineering.

Design documents walkthroughs and detailed readings.

Bug Tracking System overview.

Simple bug fixing.

Training the team offshore.


Project 3

Adaptive Integrated Multirate Radio – 310

Description

Development of control and monitoring software for the outdoor part a wireless radio.

Environment

C, VxWorks, Tornado, GNU

Team Size

3

Role

Sr. Programmer

Responsibilities

Requirement Analysis.

Design and development of socket serer over VxWorks, Design of protocol between socket server and LabVIEW based front-end intended for Calibration of the radio over a range of transmitter frequencies and temperature.

Design and development of communication protocol between Indoor unit and Outdoor unit of the radio.

Design and Development of Automatic Level Control and Automatic Gain Control (ALC and AGC) logic for transmitter and receiver respectively.

Integrated testing.


Project 2

Adaptive Integrated Multirate Radio - 34


Description

Software development for Indoor unit of a wireless radio.

Environment

C, VxWorks, Tornado, Assembly

Team Size

9

Role

Sr. Programmer

Responsibilities

VxWorks BSP development for MPC860 based board. (This was BSP migration from a reference BSP)

Design and Development for User Interface boards which provide the input to the radio to transmit.

Design and Development of FPGA programming with the compiled bit files, stored in the file system, radio configuration based on the channel plan selected and User Interface boards plugged.

Integration of Envoy SMP agent into the platform.

Integrated Testing. Integration of Envoy SMP agent into the platform.

Development of hardware access, status and configuration functions to integrate with SNMP agent and to support custom MIBs.


Project 1

Ethernet Interface for Wireless Radio


Description

Ethernet interface for wireless radio.

Environment

C, RTXC

Team Size

7

Role

Programmer

Responsibilities

SPI (Serial Peripheral Interface) driver for RTXC and QUICC 68360.

MIB access module with SPI EEPROM.



Technical Expertise:


Languages

Assembly, C, idl

Processor Architecture

Intel x86, PIC16F87x, QUICC, ARM7, ARM9, MIPS 4K, MIPS 24K, PowerPC, ARM7, Xtensa V, Xtensa LX

Peripherals worked on

Ethernet switch, SPI, I2C, UART, Serial, Interrupt controllers, DMA engine, External Memory Interfaces, compact flash, USB controller, Hardware Cryptographic accelerators, Hardware Network Packet Filter etc

OS

VxWorks, Windows CE, Linux, eCOS 2.0, RTXC, openVMS, J2ME, Palm (Familiar), Symbian (Familiar)

TOOLS

Tornado, WindRiver Workbench, Code Warrior, openVMS tools, Microsoft WinCE platform Builder 4.2, WinCVS 1.2 and above, Star Team, GNU development tools, Microsoft project, GanttProject, GNU Dia, SVN etc

Protocols familiar with

TCP/IP, SNMP, Ethernet, HDLC, TFTP, FTP, Telnet

Open Source Packages

Evolution Data Server, Sqlite3


Academic Certification:

Bachelor of Engineering in Electronics & Communication passed out in AUG 2000

University of Pune, Maharashtra, India.


Personal Details:

Name as in Passport: Harshavardhan Suhas Bokil

Date of Birth: 12.12.1977

Gender: Male

Marital Status: Married

Language Known: English, Hindi & Marathi

Passport Number: B2736771

Issue: 23.11.2000

Expiry: 22.11.2010


Residential Address: 22, Sneh Anand, 168/1, Happy Colony,

Off. Karve Road, Kothrud, Pune – 411038

Maharashtra, India.

Page11