**** ****** ***** *** ****** PARIKH 1-317-***-****
Indianapolis, IN 46268 pratik.p.parikh@gmail.c
om
Objective: Desire to obtain a full time position as a Consultant or
Enterprise Architect, where I can apply my knowledge and experience of
software development, service oriented architecture methodology, and
software process to help customize, create and maintain world-class
applications in timely manner.
Please also look at Graduate Studies (.NET + JAVA) - Undergraduate Studies
(.NET, JAVA, and C) Academic Software Engineer Experience
Work Experience:
Covance Corporation, Indianapolis, IN Oct 2006 -
Apr 2010
Sr. Software Engineer
Implemented design by utilizing development languages (Java, and C#) and
tools (Eclipse, Visual Studio, Hudson, Gradle, Maven, Ivy, and some other
proprietary tools) and Frameworks(Spring, Hibernate, Google Guice,
Jfreechart, iText,Apache POI,Apache Commons, and much more).
Played Architect Role in creating a user interface for Transactional
Electronic Data Interchange solution for collecting non billed and miss
matched transactions.
SOA Based Approach with UI consuming services build with TIBCO Business
Connect.
Used Spring 3 MVC annotated Controller, Spring DI, SIMPLE-XML API, DOJO
1.3, JSON (Jackson API), DisplayTag, and TIBCO.
Help migrate from Dynamo 4.1 to Standard J2EE Server Glassfish and Java 6
SE and Java 5 EE.
Installed Hudson based Continuation integration Server and implemented
gradle scripts for all projects.
Developed reusable components such as:
PDF Generator and Multipart PDF Generator (build on I-Text, Apache Common
Chains, and Springs AbstractPDFView).
Module System using JSTL's imports.
Charting API using CE-Wolf and Jfreechart.
Helped implement Table Generation API.
Ad-Hoc Interface for creating report templates.
Report Generation in PDF, XSL, and CSV (build on I-Text and POI).
Context based label revolver (build using Spring Message Source, Extending
Spring DispatcherServlet, Java Thread Local and Spring Interceptors).
Implemented shareable internationalization between views (build by
extending Spring JSTLView and implementing an interface of IViewGroup).
Helped Team to understand binding in Spring Multi-Action Controller, Simple
Form Controller and use of Validator in both controllers.
Reimplementation Data Revision.
Provided a plan for automation of build, change control, and code
configuration.
Provided a plan for pulling data from multiple enterprise information
sources (Data Source).
Provided a plan to reduce support cost for application.
Provided a plan for moving the old persistence API's to newer API's like
Hibernate, Eclipse-Link, and Openjpa.
Implemented a Quality Tracking and Management Application in C#, ASP.NET
2.0, Windows Integrated Authentication, AJAX Toolkit and integrated with
Track Wise. The QTM allowed project managers and others to log quality
issues raised by customers.
Through performance tuning, ensure that code is scalable and meets
performance requirements.
Through load testing making sure that all the code is thread safe and is
programmed at the highest standards.
Help team understand the importance of using the right Java constructs.
Support application developed and provide signature client services.
Provide light of sight to make sure that the important key elements are not
missed.
Communicate with the business and help them understand the changes made and
gather their input as part of agile modeling practice.
Follow standard operating procedures created by Covance Corporation.
Cerner Corporation, Kansas City, MO Sept
2004 - Sept 2006
Jr. Software Engineer
Implemented design by utilizing development languages (Java, C++, CCL, and
VB) and tools (Eclipse, Cerner Tools, and Visual Studio).
Developed White (j-unit testing) and Gray box (Test Director) Test plans
and execute them.
Through performance tuning, ensure that code is scaleable and meets
performance requirements.
On time delivery of quality code that meets defined requirements and
specifications.
Developed multiple levels (design, implementation, and architecture) of
documentation at different stages of software lifecycle utilizing sound
software documentation development practices.
Participating in project related sessions such as code reviews and project
status meetings.
Maintaining and protects architecture integrity.
Following organizational defined code management processes.
Providing troubleshooting support.
Knowledge sharing with other associates using WIKI.
Performing responsibilities effectively and self-sufficiently.
Communicate effectively and efficiently with all projects stakeholders.
Recommending design improvements.
Understand team dynamics and how individual contributions impact project
success.
Coaching and mentor associates within team, developing a successor.
Trouble-shooting problems of diverse scope where analysis of data requires
evaluation of identifiable factors.
Achievements
Developed architectural design and supporting documentation for Person
Demographics Service (PDS) and Legitimate Relationship Service (LRS). The
architecture was implemented using Web services.
Core Components used J2SE, J2EE, Cerner Reusable assets, and Apache AXIS
Components Developed
UK HL7 V3 Adapter
Loosed coupled communication components
Communication between Cerner System Integration (Secured Zone) - DMZ - NHS
Spine System (Secured Zone).
Technology used
JNDI, EJB (J2EE), Axis Web Service.
Compatible to Web Sphere Application Server 4.x, 5.x, 6.x, Oracle
Application Server, Tomcat.
Router SDK
Implementation of advanced algorithms like content base routing, pipe and
filter routing, etc.
Implementation of different destination algorithms like RPC destination, VM
destination, TCPIP destination, etc. by using which router would route the
information to an endpoint.
Patterns Used
Adapter Pattern
Mediator Pattern
Builder Pattern
Service Locator Pattern
Polymorphic Configuration Pattern
Developed architectural design web based Message Audit Transactional Viewer
(MATV). MATV was implemented using Apache Struts Plug-in and developed with
n levels of documentation
Core Components used J2SE, J2EE, Cerner Thin Client Framework and Reusable
assets.
Components Developed
Thin System Integration Audit (SI-Audit) Client Struts Plug-in.
Core SI-Audit Components for building XHTML MARKUP using MVC concept and
Servlets.
Resources developed for Style (CSS) and JavaScript (JS).
Playing strategic role in building the HL7 V3 architecture in Cerner
Millennium.
Understand the Cerner Millennium architecture.
Current researching available technologies in distributed space and
figuring out which technologies could be used to create together a cutting
edge messaging architecture.
Presenting weekly reports on the technological research and transferring
the knowledge to the appropriate team members.
Produce prototypes on HL7 V3 and Cerner Millennium architecture.
Maven builds setup and maintaining reports.
Maintaining WIKI, MYSQL Server, Apache Tomcat Server and Apache HTTP
Server.
Extending WIKI Functions
Everypath, Inc. Indianapolis, IN Sept
2004 - Nov 2004
Software Engineer - Consultant
Build Pocket PC CRM solution ground up for Physician Office
Create Data model that can encapsulates and automates the Insurance
processing
Displays full documents or show abstracts for quick viewing, including
product specs, competitive comparisons, FDA regulations or marketing
materials.
Sends information and follow-up letters to physicians through e-mail and
fax using stored account information; increases productivity, enabling reps
to complete administrative tasks anywhere.
Create Data Objects that can acts as a generic provider for db2 anywhere
and SqlServer CE.
Create Modules and common components that can be inherited, enhanced and
used easily.
Determine the best approach for the Module development and also provide
time estimation.
Rapid Prototyping and Demonstration to Development Manager along with
detailed designs.
Integrate functionality with web functions.
SQL Server CE and SQL Server 2000
Creating n-tire Database And its Entity Relational Models.
Creating Stored Procedures to make Data access easy.
Create Replication between Server Database and CE Database.
Noink Communication, Ltd. Indianapolis, IN Apr
2004 - Sept 2004
Software Engineer
Build Pocket PC CRM solution constricted towards Medical and Parma
Companies.
Create Data model that can encapsulate the Medical and Parma data contains.
Create Data Objects that can acts as a generic provider for db2 anywhere
and SqlServer CE.
Create Modules and common components that can be inherited, enhanced and
used easily.
Determine the best approach for the Module development and also provide
time estimation.
Rapid Prototyping and Demonstration to Development Manager along with
detailed designs.
Integrate functionality with web functions.
SQL Server CE and SQL Server 2000
Creating n-tire Database And its Entity Relational Models.
Creating Stored Procedures to make Data access easy.
Create Replication between Server Database and CE Database.
Interactive Intelligence, Indianapolis, IN Jun
2003 - Apr 2004
Enterprise Application Developer
Build Robust Server-Side & Desktop Application that work hand in hand using
Distributed Concepts.
Create Web Services, ASP.NET Application, Crystal Enterprise Reports, etc.
Programming Languages: C#.NET, C++ 7.0, VB.NET, and Java.
Integrate and Enhancement of MS CRM with Current Business Logic.
Determining the Application Life Cycle, Cost-Benefit Analysis, and
Application Follow.
Rapid Prototyping and Demonstration to Development Manager along with
detailed designs.
Integrating In-House Solution with the CRM/Great Plains using BizTalk
Server.
SQL Server 2000.
Creating n-tire Database And its Entity Relational Models.
Creating Stored Procedures to make Data access easy.
Create Replication between Desktop Application and ASP.NET Application
Purdue University School of Informatics, Indianapolis, IN
Aug 2003- Sept 2004
Integration CDC's - PHINS with Health Level 7 Hospital Systems to exchange
data between hospitals securely.
Configuring PHINS required - SSL, My-SQL database, Tomcat, etc.
Purdue University Testing Center, Indianapolis, IN
May 2000 - May2003
Assistant Programmer/ Network Administrator
Build dynamic Server Side applications.
Active Server Pages - Visual Basic Script, ActiveX Data Objects - OLE DB,
JavaScript.
Web Services using ASP. NET, deploying COM and COM+ modules.
Determining the Application Life Cycle, Cost-Benefit Analysis and
Application Follow.
Rapid Prototyping and Demonstration to Development Manager.
SQL Server 2000.
Creating n-tire Database And its Entity Relational Models.
Creating Stored Procedures to make Data access easy.
User Administration and Network Support.
Managing Application Server along with Administrative Polices and Group
Polices
Purdue University Department of Computer Science, Indianapolis, IN
Jan 2001 - Dec 2001
Teaching Assistant
Teaching Advance C and C++ Concepts
Grading Project and Helping Student Solve their Problem.
Education:
Purdue University, Indianapolis, IN Jan 2004 -
Pst (Est. Dec 2010)
Masters Of Science in Computer & Information Science
GPA 3.0 on 4.0 Scale
Related Course Work in Curriculum:
Purdue University, Indianapolis, IN Jan 1999 -
May 2003
Bachelor of Science in Computer & Information Science with Minor in
Mathematics
Cumulative & Major GPA 3.3 on 4.0 Scale
Related Course Work in Curriculum:
Distributed Computer Networks Numerical Methods
Database
Embedded Systems Server-Side Programming Software
Engineering
H. M. Patel High School, Dharmaj, Keyda, Gujarat, India Jan 1996 -
May 1998
School of Commerce, Passed with second class.
No SAT was required to apply for Purdue.
Computer Skills:
Languages: C/C++, Java, C#, Scala, Grovvy, Clojure, VB, Assembly, LISP, and
Shell Script.
Frameworks: J2EE, SWT, Swing, JAX-RPC, .Net Remoting/Web Services, Spring
Framework, .Net Framework, Hibernate, I-Text, POI, Commons, Guice, Simple-
XML, AXIS 1 & 2, Quartz Scheduling, and Smooks.
Enterprise Development Tools: Hudson, Gradle, Ant, Ivy, and Maven.
Operating Systems: UNIX (OpenSolaris), LINUX (Ubuntu), and Windows Server
2003, Mac 10.1, Pocket PC, Palm.
Software Packages: Eclipse, Visio, Cosmic, All Macromedia Products,
NetBeans, and VS.NET.
Server-Side Programming: ASP.NET, JSP, PHP, PERL, CGI, CSS, XML, XSL, XSD,
etc.
Client-Side Programming: JavaScript, Flash.
Database Applications: Microsoft SQL Server, SQL PLUS - Oracle, MYSQL and
Access.
Servers: Glassfish V(X), Jboss V5, Jetty, Tomcat, Spring Dm Server, IIS,
BizTalk Server 2002, Commercial Server 2002, Apache, IBM Web Sphere, Oracle
Application Server, JRun.
Semantic-Web Concept: RDF, URI, UDDI, WSDL, SOAP, OWL, etc.
1 Graduate Project Work besides Computer Science Curriculum
Purdue University Jan 2009 -
Apr 2009
Agile Development Methodology Class
ATM Simulation Project: Created a Banking simulation with multiple ATMs,
where a bank branches can start and stop ATM transactional ability by using
WPF, LINQ, and XML.
Video Rental Store: Created a video rental store with WPF, LINQ, XML,
Spring .NET. Intended to use Enterprise Library 4.1 but ran out of time.
Purdue University Jan 2007 -
Apr 2007
Distributed Systems Class
Google Map's Based Weather Condition Finder - Build up JINI Services that
are fault tolerant and auto discovered used IONA implementation and Blitz
Server.
2 Related Undergrad Research Projects Work besides Computer Science
Curriculum:
File Transfer Protocol in C and C++
TCP/IP static Connection using socket.
Using concepts of cryptograph to ensure the data.
Server/Client interaction using a static TCP/IP Port; GUI Environment using
X Windows.
Multi User Chat Application in Java
Role of Team Leader to Manage a Team of four.
Developing User Case Seniors, Class and Sequence diagrams, Entity
Relationship Modeling, Specification Documents, Software Project Management
Plan, Risk analysis, Implementation, Integration, and Documentation.
Components Used: Multi-threading, Cryptograph, Collections - Hash table,
Tree Sets, JDBC - Oracle - PL/SQL, Advance Swing - Text Components,
Progress Bar, JavaDocs, etc.
Working on modifying of Nachos OS, Using C++ and Java.
Role of Team Leader to Manage a Team of four.
Thread system
Implementation of locks and condition variables.
Implementation of synchronous send-and-receive message system.
Implementation of preemptive priority scheduling.
Multiprogramming
Allocating physical memory frames.
Virtual address space.
Context switches.
Virtual Memory.
Translation Page Table.
Exception Handler.
Streaming Media Support
Programming an AVI Splitter using Visual C++ as Win32 app.
A Step to reduce Cost of Manual Labor Splitting the Raw DV Files.
Analysis the Manual Labor to Automation.
Finding the Technology Solution to Automation.
Implementing Solution.
Integrating, Testing and deploying it to the Computer Science Department.
Components: Video for Windows.
Real-time Video Capture & Surveillance
Developing A Software Component that Allowed
Video Capture.
Image Processing.
Tracking Objects.
Research on Video Capturing, Image Overlay, Transformation and Projection
Of Objects.
Components: OPENGL, Video for Windows, and rs232 Communication.
Building PHP Library for Easy MYSQL Functionality
Analyzing the PHP in-build function to access MYSQL Database.
Creating a Library that creatively encapsulating the in-build function into
to OOP Library.
My library provided easy way to represent the database tables, records, and
its attributes.
Activities & Honors:
Two semester on Dean's List
Webmaster of Computer Science Club May 1999 - May
2003
Reincarnate the n-tier Computer Science Website.
Attend the Computer Science Club Meetings every biweekly.
Add Web Service to the Site upon the request of members, faculty or
officers.
Languages used to build the website are PERL, C, and Shell Script.