Thursday, September 26, 2013

Gopinath-Rangappa-Resume



Gopinath Rangappa

Summary

·         14 years of Software development experience with expertise in Solution Architecture, Object Oriented design, extensible Framework development.
·         Experience of architecting 6 products developed from scratch using different technologies Java, .NET, C/C++ and PHP.

Skills

Java Technology
Java 6.0, design patterns, development of server side framework, middle-tier reusable components
  • ·      JEE Technology : JDBC, JAXP, Servlets, JSP, JNDI, JMS, Java Mail, JPA, JAX-RS
  • ·         Spring Suite Frameworks : Spring Framework, Spring MVC, Spring Security, Spring Web Services, Spring Batch
  • ·         IDE/Editors : Eclipse, Vim
  • ·         Application/Web Servers : Tomcat 5.x, 6.x, Web Logic 10, Apache Web Server
  • ·         Other Java Libraries : Apache commons, Log4j, slf4j, Apache FOP, ActiveXLS, JAXP, DOM, SAX, JDOM, Struts 2.0, JNI, JUnit
Web Technology
Object Oriented UI component design using ExtJS,
SOAP, WSDL, REST, OAuth, JSON, PHP 5.3
C/C++ Technology
Experience in architecting C++ desktop application using Qt Platform,
Designed application UI framework using plug-in approach (similar to OSGi) to allow developing modules as plug-ins
Operation Systems
Windows, Solaris, Linux (Cent-OS, Ubuntu), EC2 on AWS
Build and Release Management
  • Apache Ant, Maven 2.0, NAnt, Shell Script Programming, Opsware, Jenkins
  • CVS, SVN, Perforce, Git, ClearCase, VSS 6.0
  • Experience designing, implementing release process for multi-vendors, multi-release development
SDLC
Iterative Development, Waterfall model, V-model, Agile
Database
Oracle 10g
  • Data Modeling using ERWin
  • Advanced PL/SQL programming
Project Management
Effort Estimation, Cost Estimation, Multi-Release Development Planning, Status Tracking & Reporting, Client Communication
.NET Technology
WinForm Application design and development using C# on .NET (v 1.1)
Integration with C/C++ libraries using C# unmanaged code
Plug-in framework development using C# Reflection APIs, .NET Encryption

Education

Bachelor’s Degree (Computer Science) from Sir MVIT, Bangalore University, INDIA (1994-1998)

Immigration Status

H1-B Status, Green Card processing in progress ( I-140 completed).

Professional Experience

1.      Employer: Trianz Inc (Jan 2003 – till date)


Designation: Solution Architect

Projects:

                                i.   Sales Projection Engine (SPE)

Sales Projection Engine is used to project the approximate service renewal booking in each of the forthcoming quarters.  It gets IB & Service contract data from enterprise BI to find renewable assets. The service projection is calculation for each asset by looking at historical discount, term information.  The service cost is determined by looking at overall hardware, software and storage configuration of the system and applying service % to find original service cost.  SPE finds systems configuration by processing Auto-Support data in Quoting tool and extracting configuration details.
This application is developed as independent database application developed using PL/SQL.
Role:  Architect / Lead Developer (NetApp, Sunnyvale, California)
Duration: Feb 2013 - till date
Job Responsibilities:
  • Responsible for requirements analysis, design and implementation
  • Interact with different IT technical and business teams to find the data required to calculate sales projection
Technologies Used:
  • Oracle DB, PL/SQL (95% of the codebase), Java (around 5%), Git

                              ii.   EPS (Engineering Product Support) Portal

EPS is a portal which provides view of all core files that need to be analyzed by technical support engineers.  Whenever there is a crash in NetApp storage server at client site, it generates core dump file.  This file is uploaded by client to NetApp site against a SAP case.  EPS receives notification when upload is completed and it processes the core files using a workflow and automatically analyzes the core file. If core file matches any of the already resolved defects, the SAP case is resolved automatically by EPS using Web Service call.  Any core files not resolved automatically are available in EPS portal dashboard. Users can login to portal, look at details of core file, analyze offline and put analysis details & close SAP case through EPS portal.
Role:  Technical Architect / Onsite Lead Developer (NetApp, Sunnyvale, California)
Duration: June 2012 – Jan 2013
Job Responsibilities:
  • Responsible for requirements analysis, solution architecture and detailed design.
  • Responsible for code review of all modules, streamline development process.
  • Develop & Unit test core file processing module which was the most critical & complex module in entire application
  • Implement build and deployment scripts and streamlined release management process and source code management process.
Technologies Used:
  • Java 6, WebLogic 10.3.5, Spring framework 3.1, JMS, JNDI, JPA, XML, JSON, ExtJS 4.1 , Oracle, Perl, Unix shell scripting, Git (for code review) 

                           iii.   MyASUP

MyASUP is a JEE based web application accessed by NetApp customers and partners to view health and auto support information of their systems.
Role:  Technical Architect / Onsite Lead Developer (NetApp, Sunnyvale, CA)
Duration: March 2011 – May 2011
Job Responsibilities:
  • Developed shell script based build/deployment automation scripts.
  • Deployment automation reduced go-live shutdown from 4 hours to less than 30 minutes.
  • Developed REST APIs required to retrieve data for mobile app development
  • Lead development of HTML5 based mobile application which was packaged as native application for iOS & Android using PhoneGap (Apache Cordova)
Technologies Used:
  • Java, Spring Framework, maven, shell script ing, PhoneGap, Sencha Touch, JSON

                            iv.   Smartsolve

smartsolve is a web based PHP application developed from scratch to be used by NetApp Technical Support Engineers and Partners to troubleshoot support cases.  This portal integrates data from other NGS applications like ASUP DW3, SAP CRM, LatX, SANView, TARA, NOW site applications.  NTSTP integrates with these applications using REST APIs and provides different views of data collected from NetApp systems at customer site.
Role:  Technical Architect / Onsite Lead Developer (NetApp, Research Triangle Park, NC)
Duration: June 2010 – Feb 2011
Job Responsibilities:
  • Responsible for requirements document, design documentation
  • co-ordinate with technical team members of ASUP D3, SAP , TARA application to resolve integration issues and request for API enhancements if necessary.
  • Team mentoring, code review of main and critical components of application, performance tuning
  • Design, implement build & release management process including p4 branching strategy, build scripts development, deployment scripts, environment setups

Technologies Used:
PHP 5.3, Zend Framework, ExtJS 3.3, JSON, Apache Web Server 2.2, Eclipse (PDT), p4, Apache Ant, QC, Cent-OS, Git (for code review)

                               v.   New Vs Renewal

This program aim was to streamline both business & IT process to clearly identify services purchased by Cisco customers is New Service or renewing existing Service.  The project involved high level analysis of impact to all IT applications in Opportunity Management, Order Management, Sales Commission & Goaling Process, Commission Payment, and Reporting due to New Vs Renewal Program.
Role:  IT Analyst (Cisco, Santa Clara, CA)
Duration: March 2010 – May 2010

                            vi.   SMART – Sales Management and Reporting Tool

SMART is a Sales Management JEE based web application developed to help the NetApp sales organization to manage their sales Hierarchy, Compensation Plans and Goal sheet of all sales organization commissionable employees.
SMART integrates with PeopleSoft, Enterprise Data Ware House & Truecomp
Role:  Technical Architect (NetApp, Sunnyvale, CA)
Duration: Nov 2007– Nov 2009
Job Responsibilities:
  • Responsible for the overall solution architecture and high level design of the application.
  • Interact with Business team during requirements & design phase.
  • Interact with client technical team to resolve SMART integration issue with EDW, TrueComp.
  • Data Model of entire application using Erwin.
  • Design and development of business layer framework using Spring which is used across all modules.
  • Integrate with NetApp SSO using Spring Security Framework
  • Design and development of Compensation and Participant module Business Layer
  • Design & development of integration with TrueComp Application using PL/SQL.
  • Responsible for design and code review of all modules in Application.  The code review included both Java and PL/SQL.
  • Responsible for multiple releases planning and co-ordinate perforce branching strategy to allow parallel development
Technologies Used:
  • Java 5, Spring 2.5, Struts 2.0, ExtJS 2.0, JSON, Weblogic 9.2, Oracle 10g, PL/SQL, ActiveXLS, Apache FOP
  • Maven 2.0, Eclipse 3.4, ERWin,

                          vii.   HP Photosmart Essential

HP Photosmart Essential is the next generation Digital Imaging application developed from scratch using Qt Platform. It provides features to manage digital photos, edit, and print the photos.  User can also create an album of photos and share with another user by sharing them through HP’s website hosted at www.snapfish.com
Role:  Technical Architect (HP, San Diego, CA)
Duration: Nov 2005– Nov 2007
Job Responsibilities:
  • Responsible for overall application architecture and high level design of all components
  • Review design of all modules of the product and solve any critical technical issues.
  • Design & development of critical modules of the product (Plug-in engine, UI Framework) which is C++ implementation based on Eclipse plug-in architecture. This allowed application to have loosely coupled pluggable modules.  It also provided opportunity for HP to customize application and provide branded application for OEMs with different skin, look & feel and additional plug-ins.
  • Responsible for design of Source Control Management of the Product, which included design of clear case branching strategy to ensure the development by 5 different groups is facilitated. Responsible for developing NAnt based build scripts which make nightly builds of components binaries, compile InstallShield merge modules and create application installer for QA team.
  • Co-ordinate with HP Architects to resolve integration issues with components owned by other groups in HP.
  • Co-ordinate with offshore development team and resolve any technical issues.
  • Design & development of tools which were used in build scripts to enable pseudo-localization of Qt resource files and support the application to be localized for 21 languages.
Technologies Used: Qt 4.1.x, VC++, Lead Tools, NAnt, Doxygen, InstallShield, Clear case

                       viii.   HP Photosmart Premiere

HP Photosmart Premiere is a .NET based digital imaging and print application used to manage the photos, edit and print them.  This application was developed by HP development team. The product was transitioned to our team for maintenance and enhancement of the application.
Role:  Project Leader (HP, San Diego, CA)
Duration: Apr 2005– Nov 2005
Job Responsibilities:
  • Responsibilities included understanding the current product design and working with HP’s development team to ensure the product knowledge is transitioned.  The responsibility also included defining the development and delivery process of the offshore development team.
  • Responsible for requirement analysis, effort estimation, work breakdown and task allocation to development team.
  • Responsible for Source Control Management which includes clear case branching, developing build & release scripts.
  • Design, Development of the modules.
Technologies Used: C#, .NET 1.1 Win Forms, VC++ 6.0, COM, NAnt, clear case

                             ix.   HP Copy & Picture Box

Copy application is provided to AiO end users to copy the data using installed AiO device.  It provides different options in UI to take black/color copy of the existing print out.  The Copy project was aimed at back porting the .NET application to VC++/MFC and also design the new application in such a way that, the application is extensible to support new AiO devices and scanners also in same application.
Role:  Project Leader (HP, San Diego, CA)
Duration: Nov 2004– Apr 2005
Job Responsibilities:
  • Requirement analysis, effort estimation, work breakdown and task allocation to development team members.
  • Responsible for Source Control Management of all HP projects, which includes cvs administration and developing build, release scripts.
  • Design, Development of critical functionality in HP PictureBox and Copy application.
Technologies Used: C#, .NET 1.1 Win Forms, VC++ 6.0, COM, NAnt, cvs

                               x.   ImageStore and ImageFlow (www.ttlsoftware.com )

ImageStore and ImageFlow are two Image Management products based on common re-usable modules.  These products are designed to help professional photographers to increase their daily productivity.  It allows the features like importing the images (standard image formats like jpeg, tiff and RAW formats of Nikon, Kodak, and Canon).  It allows to do different operations on the images imported into workspace like categorization, rotation, export to Photoshop, backup the images, print, slideshow, contact sheet printing.
ImageStore and ImageFlow are based on plug-in architecture where each features is implemented as plug-in.  The plug-ins implemented are loaded from the deployment directory and loaded by “plug-in platform” implemented using .NET reflection APIs & XML.  The Application plug-in loading is controlled by digitally signed license file to avoid illegal plug-ins loaded into Application.  The image modification is optimized by applying all modifications on the image only when it has to be loaded fully, otherwise the operations are done on small thumbnail image and the operations done on an image are stored in database. Application supported processing RAW images from Kodak, Canon and Nikon by integrating with their custom SDKs.
Role:  Project Leader (Through The Lens Inc, Santa Clara, CA)
Duration: Aug 2003– Nov 2004

Job Responsibilities:
  • Overall application architecture and design of product
  • Responsible for work breakdown and task allocation to team members.
  • Responsible for setting development quality process, code review and mentoring of junior members in the team.
  • Design, Development of Core modules of the product which involve image modification, caching, XML Encryption based License module, Plug-in architecture base platform.
  • Implemented online license key activation module using XML encryption
  • refactored Image import module of the application in 1.0SP2 release to use multi-threaded, multi-queue approach, which increased the performance over 100%.
Technologies Used:  .NET 1.1 (C# WinForm, ADO.NET, MSDE, XML encryption, interoperability, Remoting), NAnt, cvs

                             xi.   Trianz Java Framework/Intranet Portal

The project is a J2EE based intranet portal providing a unified corporate communication and process solution.  The project also intended to develop Framework with re-usable modules which can be leveraged for other J2EE projects.  The application was deployed on JBoss with tomcat web container and oracle database. The intranet portal provides leave management, timesheet and project management features.  The UI templates were generated using Apache Jelly.  The framework provided re-usable components at middle-tier to integrate with logging, scheduling components, generate xml template based reports.
Role:  Technical Leader (Trianz Inc, Bangalore, INDIA)
Duration: Jan 2003– July 2003
Job Responsibilities:
  • Responsible for application high level design
  • Develop re-usable components for report generation using Apache Jelly
  • Develop build and deployment scripts using Ant
  • Technologies Used:  JBoss, Tomcat, Apache Web Server, Oracle, CVS

2.      Employer: Sun Micro Systems (April 2002 – Dec 2002)


Designation: Sr. Software Engineer

Projects:

                                i.   Sun ONE Web Server

Sun ONE Web Server is highly scalable HTTP Web Server product which is used in Sun Application Server, Directory Server and also available as stand alone.  This project involved doing defect fixes for 6.0 SP2 release.
Role:  Sr. Software Engineer (Sun Micro systems, Bangalore, INDIA)
Duration: Apr 2002–Dec 2002
Job Responsibilities:
  • Defect fix & feature enhancements related to core web server and Servlet web container.
  • Worked in areas related to portable runtime library (Mozilla’s NSPR) usage in web server.
  • Design & Development of prototype to integrate Sun Lab search engine with Sun ONE Web Server and replace Verity Search Engine.
Technologies Used:  Java, C/C++ on Solaris, CVS, ant

3.      Employer: Aztec Software (April 1999 – March 2002)


Designation: Sr. Software Engineer

Projects:

                                i.   SyncML toolkit for J2ME Platform

SyncML toolkit is used to synchronize data between two applications using XML based protocol defined by standard body www.syncml.org.  This project involved developing SyncML protocol implementation with smaller footprint to use in J2ME application. Project also involved using SyncML APIs to synchronize address book data between J2ME mobile and Visto VMAP server.
Role:  Sr. Software Engineer (Visto Inc)
Duration: Apr 2001–March 2002
Job Responsibilities:
  • Design and development of client side SyncML toolkit on J2ME enabled Motorola phone.
  • Identified the programming style in Java which causes more foot print.  Developed shell script to simulate the Java obfuscation to reduce the entire application footprint.
  • Designed the application to be split as multiple MIDP applications so that we can load particular part of UI depending upon the user flows. This reduced memory foot print per MIDP app and able to load the application on Motorola J2ME phone. This alternate design was the key factor for success of the project.
Technologies Used:  Java (J2ME)

                              ii.   Aztec B2B Framework (ABIF)

ABIF is a B2B integration framework running on J2EE compliant app server and allows ASPs to integrate with multiple partners and customers by writing integration logic using custom workflow language (ABIL). ABIL provides different data conversion functions using XML/XSL, simple POJOs, EJBs, different data sources like DB, JNDI, Email, FTP, Web Services. ABIF also provided visual editor to create workflows by drag & drop of components.
Role:  Sr. Software Engineer (Aztec)
Duration: Jul 2000–March 2001
Job Responsibilities:
  • Design and development of Exception handling, framework to access different data sources like DB, JNDI, Mail, XML, POJOs, FTP, Web Services from workflow language.
  • Design and develop auto-load of data sources when application properties file is changed.
  • Design and development of automated testing tool to execute workflow script language and validate result.
Technologies Used:  Java on J2EE platform, JNDI, JDBC, JMS, Web Services, Weblogic 5.1, WSDL, SOAP, XML4J

                           iii.   Integration Framework

Jamcracker is an aggregator of ASPs involved in different domains and provides one stop shop for all these services with unique billing and customer support contact.  The data exchanged with partner ASPs is in the form of XML and conforms to their proprietary DTD structure called ITML.
Integration Framework is a JMS based framework to exchange the ITML documents between Jamcracker and their partner ASPs.  The framework provides platform to integrate third party vendor products used within Jamcracker and also provides different adapters, which can be used to integrate with new and existing ASPs. The adapters are configurable using configuration XML file and provide easy APIs where partner ASP specific methods were invoked.  Adapters provide functionality like sending and receiving ITML documents over email, ftp and HTTP.
Role:  Sr. Software Engineer (Jamcracker)
Duration: Dec 1999–July 2000
Job Responsibilities:
  • ·         Design and development of adapters, which send/receive ITML documents over JMS queue and invoke the ASP service using different protocols using SMTP, FTP and HTTP.
Technologies Used:  Java on J2EE platform, XML4J, DOM, SAX, JMS

                            iv.   XML Indexing

This project was a proof-of-concept to implement persistent DOM APIs where xml data can be accessed using DOM APIs without loading entire XML data in-memory.  The XML native DB allowed applications to register DTDs for which xml data will conform to.  It allowed creating indexes on XPath pattern and it was stored using B+ tree algorithm.
Role:  Software Engineer (Aztec)
Duration: Apr 1999–Nov 1999
Job Responsibilities:
  • Design and development of xml native DB
  • DOM API implementation to use native XML DB
Technologies Used:  Java, DOM