7
BHAVIN PATEL Permanent Address: 114, Adithya Elixir, Doddanakundi Bangalore-560037, Karnataka, India Email: [email protected] Phone: +91-9741700522 PROFESSIONAL SUMMARY Senior Software Engineer seeking to leverage more than 10+ years of software industry experience. In-depth understanding and knowledge of UI framework Design and Development. Expertise in Mobile, Printer, Identity Domain Management and Flash domain. QT Ambassador. SKILL SET Language(s) Java, C/C++ , .Net ( WPF ) , SQL-Lite , J2EE , mongo DB Scripting Python, java script , Angular JS , node JS Framework QT 4.6 ,Android , Qt Quick, STL, Boost , Hadoop , Cloudera Operating Systems Windows , Linux , Symbian , Android , ThreadX, MQX IDE Visual Studio, Carbide , CodeWarrior , Qt Creator Tools/Version Control system GIT, GIT Hub , Perforce, Vss, Svn, Mercurial, gdb, Rational Purify, Rational Quantify, Val-grind, QC , JIRA , Accurev PATENT PAPER Code patent where complex data structures can copy to shared memory and share by different process. Patent is about challenging problem faced by Nokia in launching and Orientation change performance in all applications. It was very biggest performance hit by reading Xml and Css and applying to application layouts. Patent including data-structures compatible to shared memory, relative shared-pointer and custom allocators. It deduce to 50%

Bhavin_Resume

Embed Size (px)

Citation preview

Page 1: Bhavin_Resume

BHAVIN PATEL Permanent Address: 114, Adithya Elixir, DoddanakundiBangalore-560037, Karnataka, India

Email: [email protected]

Phone: +91-9741700522 PROFESSIONAL SUMMARY

Senior Software Engineer seeking to leverage more than 10+ years of software industry experience.

In-depth understanding and knowledge of UI framework Design and Development.

Expertise in Mobile, Printer, Identity Domain Management and Flash domain. QT Ambassador.

SKILL SET

Language(s) Java, C/C++ , .Net ( WPF ) , SQL-Lite , J2EE , mongo DB

Scripting Python, java script , Angular JS , node JS

Framework QT 4.6 ,Android , Qt Quick, STL, Boost , Hadoop , ClouderaOperating Systems Windows , Linux , Symbian , Android , ThreadX, MQX

IDE Visual Studio, Carbide , CodeWarrior , Qt Creator

Tools/VersionControl system

GIT, GIT Hub , Perforce, Vss, Svn, Mercurial, gdb, Rational Purify, Rational Quantify, Val-grind, QC , JIRA , Accurev

PATENT PAPER

Code patent where complex data structures can copy to shared memory and share by different process.

Patent is about challenging problem faced by Nokia in launching and Orientation change performance in all applications. It was very biggest performance hit by reading Xml and Css and applying to application layouts.

Patent including data-structures compatible to shared memory, relative shared-pointer and custom allocators. It deduce to 50% improvement in launching and orientation change of the application time.

WORK EXPERIENCE

Organization: SanDisk Inc. (July 2012 – Till Now)Position: Staff Software EngineerJob Responsibilities:

Design, Develop software/Tools which process and analyses large number of logs

Design , Develop software/Tools which validates the NAND Firmware.

Page 2: Bhavin_Resume

Design Develop the Viewer for NAND Diagnostic Leading team of 5 people. Requirement gathering, project planning and execution. Pre Studies and complex prototypes. Modeling the ASIC.

Environment: Language : Java , C/C++, Python, .Net(C#, WPF ) , Angular JS Framework : boost, STL , Mongo DB OS : Windows, Linux, MQX. Tools : JIRA, Accurev, Visual Studio, Eclipse

Projects Undertaken:

Process and Analyze the Large number of Logs and provide the diagnose information in Viewer.

o Design Develop the Framework which process the large number of logs

o Install and configuration Mongo DB to store the unstructured logs.

o Developing Viewer in Angular JS to analyze the Logs and provide the Diagnose information.

Core Framework development for PCIE/NVME/SATA/SAS based product ( WD/SanDisk SSD ):

o Design and Develop the Framework which enables validation team to test the PCIE based embedded HDD firmware.

o High performance multi-threaded framework which is used for validation of SSD and hybrid HDD firmware.

o Working and Develop software stack for SATA, SAS and NVME which is used in validating SanDisk SSD.

o Debug and modify custom AHCI driver, exploring NVME and design and development of NVME driver.

o Designing of Viewer UI tool for NAND diagnostic which is based on JAVA.

Framework development for validating Gaming product( Client Nintendo )o Developing the framework which enables validation team

to test the gaming product which is custom protocol, FE and BE firmware.

o Debugging Firmware code through JTAG.

Framework development for validating USB Product.o Understanding SCSI architecture and USB 2.0, 3.0 protocol

stack.o Exploring the different drivers integration with framework

(windows driver, USBIO, Jungo).o Developing the framework which is used for FE/BE

Firmware validation.

ASIC Modeling.o Involved in modeling the ASIC controllers and IP.o Development on System C like framework which enable the

modeling of SanDisk Controllers, IP and Flash on windows environment.

SanDisk Viewer support.o Support for CLI wrapper interfaces which is called by .Net

Page 3: Bhavin_Resume

Applications.o Prototype of Reflection for calling unmanaged code from .Net

application and lead other team to develop that.

Ashling/Digelent JTAG support.o Developing code which uses JTAG and send diagnostic

command to devices.o Integration of Ashling and Digelent specific library to access

JTAG.

Organization: H.P. India Pvt. Ltd. (March 2011 – July 2012)Position: Senior System EngineerJob Responsibilities:

Design, Develop and Testing of Core UI framework elements for Ink-jet printers.

Pre Studies and complex prototypes.Environment:

Language : C/C++, Python. OS : Windows, Linux, ThreadX. Framework: QT, STL. Tools : mercurial, Visual Studio , QT creator

Projects Undertaken: Core Enablers for UI framework:

All the core data-structures (Vector, String, Hash, List, and Linked-List) which is highly optimized for embedded environment.

Introducing Signal-Slot mechanism which is highly used for communicate two different UI Elements.

Localization support in String. Extensible Paint-System Design which can adopt to any

platform specific Drawing. Event propagation design. Animation Framework which provides all effect/Animation to

widgets properties. Item-View Framework which is MVC architecture for Complex

widgets (e.g. List, Grid, Coverflow …) Gesture framework which resolves all the application event

handling complexities and design is extensible to adopt new custom gestures.

Design Layout engines. (Linear, Grid, anchor...). Design Input framework which consist of Editor and

Multilanguage Keyboards. UI widgets library.

Platform Independent Emulator: Design and Develop the emulator for the framework

development which can work on Windows, Linux, Mac. Make development work 80% faster.

Declarative UI Framework: Design the xml syntax. Loader and parser for the xml. Design enablers to adapt declarative approach in framework.

Organization: Nokia India Pvt. Ltd. (Dec 2007 - March 2011)Position: Senior software EngineerJob Responsibilities:

Define Architecture, Develop, Test of Modules. Pre-studies and prototypes.

Page 4: Bhavin_Resume

Agile Scrum master.Environment:

Language : C++, python. OS : Symbian, Windows. Framework: QT, Hitch-Cock, Nokia SDK. Tools : git, valgrind, Qt creator , Visual studio, Code warrior.

Projects Undertaken: UI framework (symbain4, Hitch-Cock).

Formally known as Orbit, QT based S60 UI framework. Theme component, Theme server Implementation. SVGT icon rendering implementation. Common widgets Implementation for N-Series phones based on

hitch-cock framework.

Organization: Persistent System Pvt. Ltd. (July 2006 - Dec 2007)Position: Member of Technical Staff.Job Responsibilities:

System Analysis and Design and Development. Implement design specification and new Features. Unit testing of individual modules. Bug, memory leak, Hang/Crash resolution.

Environment: Language: C/C++, Java. OS : Windows, Linux, Solaris. Framework/Tools: make, perforce, Jira, gdb, valgrind, IBM

purifier/Quantifier.

Projects Undertaken: (Client Oracle USA. ) Oracle Access Manager ( 10 g )

o It is product of Identity Management. Its main functionality is to manage control access of web resources and manage the identities of users.

o The main server components are access server and Identity server and web plugins are Webpass, Access Manager and Webgate.

o Oracle Access Manager 10g includes a Web-based interface that provides a single point of entry and a System Console that enables administrators to assign and delegate administrative responsibilities and to manage the appearance and behavior of Access and Identity components and applications. The Access System provides single sign-on across any Web application. It supports a variety of access policies, and is fully integrated with the Identity System so that changes in user profiles are instantly reflected in the Access System’s policy enforcement.

Organization: e-Infochips Ltd. (Nov 2005 -July 2006)Position: Embedded Software Engineer.Job Responsibilities:

Page 5: Bhavin_Resume

System Analysis and Design Development and Testing on Video surveillance project.

Understanding the critical path of design and implementation. Active participation in Test Plan and Test Design. White box and regression testing. Bug fixing. Implementing scripts which automate the test procedures. Communication with client for requirement gathering. Build and release.

Environment: Language : C. OS : Windows, Linux. Framework/Tool : SVN.

Project undertaken: (Client Object Vide USA. ) Object Video View:

o Object Video VEW works with existing security infrastructures and allows users to define rules so that they can detect, classify and track potential threats to their environments - in real time. It then generates real-time alerts when predetermined, User-defined security rules are violated.

Object Video Management:o Object Video Management tool is mainly used for

configuration of Video Surveillance Camera. User can configure the input video files through it. It is installed on Server machine for central control.

Object Video Forensics:o Object Video Forensics works with Object Video VEW to

provide rapid analysis of collected video, allowing users to identify patterns and trends that can help them to anticipate and effectively deny future security threats. This product can scan days and weeks of pre-recorded video within minutes to locate and extract critical information about potential security breaches.

ACADEMIC QUALIFICATION

“Diploma in Advance Computing” (Year: 2005) from C-DAC (A Govt. Advanced Computer Training School Pune) securing 67.41% marks.

B.E. (Information Technology) from Rajendra Mane College, “Mumbai University” in year 1999 -2003 securing 57% marks.

Higher Secondary Examination from ST. Xavier’s High School, Ahmadabad to “GHSE Board” in Year 1998-1999 securing 67.38% marks.

PET PROJECTS

Small Talk ( Android Application )o Chat Application where User can Login and create friends and share

the videos and photos to multiple friends for once , User can set the time duration to watch the videos.

o Android application which talks to Server developed in Node Js and uses MongoDB to store unstructured data e.g Users, Friends , Relations , Sessions , files , videos

o Environmento Android , Java , Xml , node JSo Mongo DBo Parse-server, Parse SDK , Heroku , mLabs for Deployment.

Page 6: Bhavin_Resume

Personal Assistant Mobile Application.o Find more description on below link :o Assistant Applicationo Due to this application, Nokia decided to make me QT ambassador.o Environment:

Language: C++. Framework/Tool: QT, QT creator, Nokia SDK, Code warrior. OS: Symbian, windows.

Save Life Mobile game.o Find more description on below link :o Save Life Gameo Environment:

Language: Java Script, Qml. Framework/Tool: QT, QT quick, QT creator, Nokia SDK, Code

warrior. OS: Symbian, Windows.

AREA OF INTEREST

Design and Develop Mobile Application/Game in spare Time. Technical blog sharing knowledge of QT/QMl and mobile app/game

development. Blog Link : Qt/QMl Blog