manishmohan

7
1 MANISH MOHAN [email protected] SUMMARY OF EXPERIENCE: 11 years of software design and development experience. Over 4+ years of development experience in iOS application development using XCode, Objective C and Cocoa Touch Framework Created and customized views, table views, tab bars and navigation bars which are some basic functionality in a multi-view application Worked on parsing with both SBJson and LibXML, as well as NSXMLParser and NSJSONSerialization Worked with UI design using Storyboard and Interface Builder Experience with using GCD and NSOperation to perform multi-threaded development Skilled in the use of SQLite, CoreData, and File Manager for storing persistent data Memory and Data Management experience in both MRR and ARC Experience with both SVN and GIT code repositories Designing interfaces using Interface Builder (MVC pattern). Knowledge in Object Oriented Design Patterns and how to apply them in Objective-C. Setup iOS development competency and build the iOS development team. Built strong development team focused on customer feedback and passionate about high quality product development. As a Technical Architect/Lead, managed the team and involved in design and coding. Results Oriented, self-disciplined, highly motivated and competitive nature. Team player with excellent communication and problem solving skills. Development and deployment of mobile POS software to support all Apple stores globally and rolled out to Apple stores across different countries. Highly Agile execution At Apple development Post-implementation, application maintenance and enhancement support to the client with regard to the mobile application Effective team player with strong interpersonal and communication skills Strong knowledge in all phases of Software Development Life Cycle (SDLC) process, which include requirement analysis, designing, implementing, debugging, fixing and maintaining the software Pre iOS experience includes system software development using C, C++ and Linux. And also worked on Java development projects alongwith web application development using Python and Django. Experience also includes Release Management and QA (manual and automation) Technical Skills: Languages Objective-C, C++ and C, Shell Scripts, Python, Perl and Applescript OS iOS, Mac OS X Mavericks, Linux Dev Tools Xcode, Visual Studio, vi iPhone Programming Objective-C, SQLite, iOS SDK, XML/JSON Parser, Instruments and RESTful Web

Upload: manish-mohan

Post on 17-Jul-2015

28 views

Category:

Documents


0 download

TRANSCRIPT

1

MANISH MOHAN [email protected]

SUMMARY OF EXPERIENCE:

11 years of software design and development experience.

Over 4+ years of development experience in iOS application development using XCode, Objective C and Cocoa Touch Framework

Created and customized views, table views, tab bars and navigation bars which are some

basic functionality in a multi-view application

Worked on parsing with both SBJson and LibXML, as well as NSXMLParser and NSJSONSerialization

Worked with UI design using Storyboard and Interface Builder

Experience with using GCD and NSOperation to perform multi-threaded development

Skilled in the use of SQLite, CoreData, and File Manager for storing persistent data

Memory and Data Management experience in both MRR and ARC

Experience with both SVN and GIT code repositories

Designing interfaces using Interface Builder (MVC pattern). Knowledge in Object Oriented Design Patterns and how to apply them in

Objective-C.

Setup iOS development competency and build the iOS development team.

Built strong development team focused on customer feedback and passionate about high quality product development.

As a Technical Architect/Lead, managed the team and involved in design and coding.

Results Oriented, self-disciplined, highly motivated and competitive nature.

Team player with excellent communication and problem solving skills. Development and deployment of mobile POS software to support all Apple stores

globally and rolled out to Apple stores across different countries.

Highly Agile execution – At Apple development Post-implementation, application maintenance and enhancement support to the client with

regard to the mobile application

Effective team player with strong interpersonal and communication skills

Strong knowledge in all phases of Software Development Life Cycle (SDLC) process, which include requirement analysis, designing, implementing, debugging, fixing and maintaining the software

Pre iOS experience includes system software development using C, C++ and Linux. And also

worked on Java development projects alongwith web application development using Python and Django. Experience also includes Release Management and QA (manual and automation)

Technical Skills: Languages Objective-C, C++ and C, Shell Scripts,

Python, Perl and Applescript OS iOS, Mac OS X Mavericks, Linux Dev Tools Xcode, Visual Studio, vi iPhone Programming Objective-C, SQLite, iOS SDK, XML/JSON

Parser, Instruments and RESTful Web

2

Services Source Control svn, CVS, Visual Source Safe Databases SQLite, MySQL, Mongo Design Agile Methodologies, Software Design,

Architectural Design Domain Retail POS (Point of Sale), iPhone app,

Mac Desktop, Energy

Professional Experience:

1.

Client: Apple Inc, Cupertino, CA Project: EasyPay POS – RETAIL (Being Used in Apple Stores across countries) Role: Technical Architect / Lead - Developer Duration: October ’09 – June ’11 And February ’12 – Till Now

Project Description: POS software (iOS App) is installed on iPod devices. This software is widely used in the all Apple stores through out the world. Also, this software is used by Apple POS purposes; so, it’s not available on iTunes. This software is used for all types of transaction operations (sale/return) in the store. Like using this software store employees can scan any item, return the item which was sold before, Suspend any transaction and retrieve in future and also transaction can be completed by cash, Debit Card, Credit Card, Gift Card, Purchased order, etc. After completing the transaction, customer will get the received by email/print. This application is based on client server model and all the communication is facilitated through xml request / response. Responsibilities:

Involved in designing and enhancing the app for new requirements.

Worked for POS for Germany and Australia, which was integrated with main application and launch in the Apple store.

New functionality implementation and design new screen for new functionalities

Worked on customer coordination.

Taken care of Testing and delivery

Worked on automating build process of iOS application

Developed python script to figure out iOS application size and the respective architectures it was built for. This was done for iOS application size optimization.

Environment: Objective-C, Cocoa, MySQL, MAC OS, Xcode, Interface Builder 2.

Client: Sensible Softwares Private Limited, India

Project: bootstraptoday.com : Online project management tool

3

Role: Project Manager [Responsibi li ties included design and development as

well, as this was startup venture] Duration: June ’11 – January ’12

Project Description:

This is online project mangement tool, wherein user can create account,

create members, create project, create tickets, milestones, etc and track them. Svn repository is provided with the account. It supports wall and wiki. There is a dashboard which gives data about the project. Activity trail is

maintained to track the recent developments. Responsibilities:

Involved in understanding the current product and come up with new ideas to enhance the product. Involved in understanding the design, codebase and

related technologies. Involved in bug fixes using python, django, postgresql, etc.

Involved in automating build and release process using fabric, a python based tool. Involved in setting up the postfix mail server for email communication with users.

Involved in developing the functionality to track activity on website and storing in mongoDB, which is then shown in tabular format to track the website

usage.

Involved in developing the functionality to create tickets and add comments

on existing tickets through emails. For this i used lamson http://lamsonproject.org/

Worked on the desktop client to manage the svn related activities related to

bootstraptoday.com using C++ and QT. Involved in writing rest api’s using python and django, which will enable desktop application to interact with

bootstraptoday server.

Managing QA Team to perform automation.

Environment: Python, C++, MySQL, Postgresql, mongoDB SVN, postfix,

fabric, lamson, Mac OS, Linux, Windows.

3.

Client: Apple Inc, Cupertino, CA Project: e-Approval (Apple Internal Tool) Role: Technical Architect / Lead (IPhone) Duration: July ’09 – October ’09

Project Description:

This application has the following functionalities:

4

Submission of new bills with different category, sub category, Description, date etc. Users can set monthly budget and also can set budget for separate category. After that user can find the expense bill and then they can submit their bills. One more part was Report; there are different types of report and chart, like Details report, Expense report, Bill report, and bar chart, Pie chart and camera feature to take a picture. Responsibilities:

Created the initial design for prototype and done the screen design and implements of functionalities, like all the Reports and graphs.

Created the custom picker view for display data for category, sub Category etc. Done the database design in SQLite3.

Environnent: Objective-C, Cocoa Touch, SQLite, MacOS, Xcode, Interface Builder

4.

Client: Mitsubishi

Project: GTD3 Role: Project Lead Duration: February ’09 – July ’09

Project Description:

GTD3 is a factory automation project, which involves Graphic Operation

Terminals. The factory layout is designed on GTD3, which is developed using VC++. Then the designed layout is ported on Graphic Operation terminal, which is a touch panel device and used to control the factory setup. Scope of Satyam is

to develop GTD3. Responsibilities:

Interacting with development and QA Team to discuss the design and progress.

Preparing test plans and merging of client module.

Build and Release Management

Environnent: VC++, CVS, Windows XP, XP(Japanese), Windows 2000, Windows Vista

5.

Client: Google Inc. CA. Project: Google Sync and Software Updater Role: Project Lead (QA Automation) Duration: April ’07 – October ’08

5

Project Description:

The major products worked with in Google from QA Automation perspective are: 1. Google Contact Sync, which syncs the contacts between Google Contacts and

Address Book. 2. Google Software Update Engine, which updates Google Products. Responsibilities:

Interacting with client to understand the design and purpose of the product. Meeting regularly with client for updates on the products

Designing test plans and discussing them with the team. Design and develop the tools and applications to test the Google Mac products,

using Objective C, Cocoa, XCode and Applescript

Developed frameworks in Cocoa to automate the complete test set up to:

1. Reduce the test set up time. 2. Reduce the human involvement. 3. Easily comprehend the test result data as data will be shown as tables

and charts 4. Analyze the automated test results

Design the test set up’s to stress test the product.

Environnent: Objective C [Cocoa], Apple script, Shell Script, Perl, Mac OS

6.

Client: GE Energy, Canada

Project: GEN 2 IP SERVER Role: Project Lead Duration: January ’05 – March ’07

Project Description:

GEN 2 IPSERVER is the advanced version of the GEN 1 IPSERVER extensively used in Power substations to control electrical devices remotely. Scope of this project is limited to Software development as given below. Collecting data from

remotely and serially connected electrical devices (IEDs) in the substations. Storing the data values in a real time database. Presenting to the remote users

through TCP/IP connection Responsibilities:

Analysis of the specifications provided by the clients. Perform Use case analysis and design the use cases.

Designing the Real Time Database.

Designing the application for USB Security Key.

Development of Real Time Database

6

Coding, debugging and testing of Real Time Database which includes implementation of Shared Memory, semaphores, FIFOs, etc and which acts

as common repository to store the data. Coding, debugging and testing of Shared Library used by other applications

Designing, Coding, debugging and testing of Modbus Data Collection Module. This application uses Modbus protocol to communicate with the Intelligent

Electronic devices both on Serial and Network communication mediums. It collects data from the Intelligent Electronic devices, sends command to them and retrieves fault information. Development of Implementation Guide

documents for USB Security Key, Common Shared Library and Modbus Data Collection Module

Development of Test Procedures document for Modbus Data Collection Module Execution of Test Procedures for Modbus Data Collection Module

Environnent: C, C++, Java, Perl, Real Time Database, mSQL, Embedded

Linux 7.

Client: Motorola

Project: Task Offloading Project Role: Team Member Duration: January ’04 – December ’04

Project Description:

Task Offloading is one of the technologies that can reduce the amount of TCP/IP processing handled by microprocessor and server I/O subsystem, and thus ease

server-networking bottleneck. Offloading the TCP/IP stack to a slave processor frees the resources on the host processor for running the applications on the host machines and will improve the network speed also. Task Offloading enables

applications to take full advantage of CPU power and effective usage of High-speed Ethernet capabilities. Responsibilities:

Analysis of the specifications provided by clients. Perform Use case analysis

and design the use cases.

Design and development

Development of TCP/IP offload engine

Testing of TCP/IP Offload engine

Development of PCI Driver for MPC8248PCIAI Card

Environnent: C, Metro TRK, Embedded Linux, MPC8266 PCIAI Card

7

Educational Qualification:

Master of Computer Applications (MCA) from M.S Ramaiah Institute Of Technology, Bangalore.