Lead development teams to build large scale customer facing applications successfully in a timely manner, mentor the team members, and produce quality software.
Hands on experience building cloud native applications using micro services architecture, deploying them to AWS infrastructure.
J2EE Developer with sixteen years of experience in full software development life cycle (SDLC) including analysis, design, development, deployment, testing, documentation
Distributed n-tier and Client/Server architectures.
Excellent understanding of software design patterns such (Builder, Factory, Adapter, Decorator, Strategy, Façade etc.).
Implement SOLID design principles to produce loosely coupled and highly cohesive software.
Very good understanding and hands on experience with XML schema, Service Oriented Architecture (SOA) and web services (SOAP with JAX-WS and REST).
Hands on experience developing single page applications using AngularJS 1.x and Angular
Hands-on experience writing Shell scripts and Perl scripts.
Thorough understanding of RDBMS in writing queries, stored procedures etc. using Oracle, Sybase and DB2.
Self motivated with excellent analytical, programming, communication (written/verbal) and interpersonal skills.
Operating Systems: Windows, Unix and Linux
Cloud Technologies: AWS, Kubernetes, Docker
Spring Technologies: Spring Boot, Spring MVC, Spring AOP, Spring Core, Spring Beans and Spring Context.
App/Web Servers: Web Sphere 5.0, BEA Web Logic 7.0/8.1/9.2, JBOSS 4.x, Glassfish 2.1 and 6.x/7.x, TC Server 2.8.x
Languages: JAVA 6/7/8/10, C, C++, SQL, PL/SQL, Shell Scripting (Korn, bash and C shell), Perl.
Database: Oracle 7.x/8i/9i/10g, Sybase, MS-SQL Server, MS-Access, DB2, My SQL 5.x
Version Control: CVS, Visual Source Safe, Sub Version (SVN), Git.
Rational Tools: Rational Requisite Pro.
Tools: MS-Office, Actuate Reports, Informatica 6.x/7.1/8.1.
Frameworks: Hibernate 3.0/3.3.2, Spring 4.x, Struts 1.1/1.2.x, JSF 1.1/1.2
Web Services: REST and SOAP
IDE’s: IntelliJ Idea 18.x, Spring STS, Eclipse.
Daugherty Business Solutions – DFW 03/2019 – Cont’d
Senior Consultant - Java/AWS Architect
Provide consulting services to Southwest CREW team.
Pair and help team members in making enhancements to exisiting functionality.
Implement mutual auth solution so that crew applications could talk to third party services (Nuance and Traveliance) securely (and authentication as well).
Implemented distributed locking mechanism using AWS dynamo db client so that only one container could import certificate into AWS ACM for mutual auth implementation.
Batch job migration writing files to Amazon S3, writing lambda function to write a message into SQS so that those messages are consumed by on prem application(s).
Trouble shoot defects/deployment issues in kubernetes environment specifically to AKKA cluster.
Test Driven Development (TDD) and pair programming.
Environment: Java 8, Spring Boot 2.x, AWS, OAuth2, JWT, Docker, Kubernetes, Kubectl, ELK, Postman, Postgres, Mac Book Pro, Windows, Digital Certificate (X509), PKI, Git, Junit, Responsive Design, SLF4J.
Coda Global LLC – Southlake, TX 07/2018- 03/2019
Provide consulting services to EHE based out of NY and Pleasonton, CA
Built account registration and profile pages using Angular components and build backend services using Spring boot.
Built exception handling for micro services when feign client runs into exceptions.
Leverage Amazon SDK to update user attributes in AWS Cognito.
XP practices - pair programming, TDD, refactor to improve the design, continuous integration.
Environment: Java 10, HTML5, CSS3, Angular 6.x, Spring Boot, Spring Cloud, Micro services, AWS, OAuth2, JWT, Docker, Kubernetes, Teraform, Postman, My SQL 5.x, Mac Book Pro, Git, Junit, Responsive Design, SLF4J.
American Airlines – DFW 04/2015 – 07/2018
Lead the team successfully with quality software delivered in a timely manner.
Participate in Iteration 0, play spikes to simplify the business requirements and help groom the stories.
Mentor team members, communicate the intended architecture to the team members and Solution Architect, made sure that the technical vision is implemented and improvised as the time progressed.
Developed features on various parts of the website (aa.com) such as trip insurance on the payment page, contact forms.
Built encryption using PGP (Pretty Good Privacy, an implementation of hybrid cryptography) for the data at rest so that PII/PCI compliance is met.
Built contact forms with modern frontend technologies (AngularJS 1.x), micro services like architecture for the business layer.
XP practices - pair programming, TDD, refactor to improve the design, continuous integration.
Southwest Airlines – Dallas, TX 09/2012 – 03/2015
Sr. Java / Java EE Consultant
Participate in IPM (Iteration Planning Meeting) to review the prioritized user stories/technical stories for the sprint, task them out and estimate hours for each of the identified tasks.
Design, code and write unit tests for the user stories and support QA team in functional testing across the test environments (dev, itest and ftest/cert).
Built route cache logic for the web layer, and coded web referral components to refer the user to a website depending on the travel info that was inputted.
Built JMX interface to view the routes clob and reservation system for the user inputted travel information.
Developed behavioral tests using Jbehave and Dyna Stubs (SWA specific frame work to provide stubbed data), run the test suites locally and make sure they pass on radiator.
Built MDM Client that invokes MDM web service – made use of cxf-codegen-plugin to generate source code from WSDL file.
Configured the java key store (.jks file) so that SWA digital certificate(s) are recognized and the ESL/MDM application establishes a secure (HTTPS) connection with its upstream.
Built restful entry points to give the user ability to build routes/generate routes inconsistencies report from the browser.
Written spring aspect to capture the soap response and write it to a file, and build archive clean-up logic.
Participate in Agile (2week) iterations, interpret business requirements and discuss them with the business analyst with any mis-interpretations/missing requirements.
Exercise Test Driven Development (TDD) practices and write unit tests for the code that is built – used Mockito frame work to mock the service objects and Hamcrest framework to neatly organize the error messages.
Participate in daily stand-up / SCRUM meetings to provide status on the tasks worked on.
Environment: HTML, CSS, Java (JDK 1.6 and JDK 1.7), SQL, Tomcat 6.x, SQL Developer, Apache Maven 3.x, Intellij Idea 10.5/12.x, Java Script, XML, XML Schema, JAXB, Jenkins, JUNIT, Mockito, Hamcrest, AJAX, Spring 2.5/3.2.x, Spring MVC, Spring AOP, Log4J, Oracle 10g, Selenium, Selenium Web Driver, Jbehave, JMX, Ubuntu, Linux, Fire Bug, REST Web Services, SOAP Web Services, Soap UI, JMX, JIRA, SVN, GIT, Stash, Agile, SCRUM.
Travelocity – Southlake, TX 02/2012 – 08/2012
Global Hotels (GH)
Sr. Java / Java EE Consultant
Participated in the successful roll out of “Descriptive Content Phase-2(A)” by building the code, unit testing and pushing it to various test environments (dev-int, cert and staging) and also to production environment.
Participate in Agile (3week) iterations, read business requirements, understand and discuss them with the business analyst to nail down the gaps.
Build POJOs; implement “equals”, “hashcode” methods appropriately using apache commons API and m
Build JibX mappings/bindings between POJOs and the incoming OTA compliant XML document for descriptive content API
Write JUNIT test cases to unit test the code and use mockito framework for mocking.
Build JBPM flow and action classes to fetch property content data from PMS (Property Management System) and update the property for the incoming descriptive content changes.
Build Service Invoker, Context, Context Factory and response bindings to invoke other REST services (GLS and PMS) within Travelocity.
Modify the existing sql queries on the shopping service to bring back sabre id and chain code as part of the result, review with the DBA on query performance.
Build/Modify Velocity template(s) to generate XML to post to internal restful web services.
Deploy the application into development environment (dev-integration), smoke test the changes and assist QA team in testing the descriptive content API
Designed and architect-ed multi threading model for booking delivery notification process to work in parallel by using thread pool executor API offered by Java 5 framework.
Help QA in writing Jmeter scripts, run them and verify the results.
Participate in daily stand-up / SCRUM meetings to provide status on the action items.
Environment: HTML, CSS, Java (JDK 1.6), SQL, Tomcat 6.x, SQL Developer, Apache Maven 2.x, Eclipse 3.x, Java Script, XML, XML Schema, Altova Spy, JibX, JBPM, Velocity, Free Marker, Hudson, JUNIT, Mockito, AJAX, Spring 2.5, Hibernate 3.x, Spring MVC, Log4J, Oracle 10g, Jmeter, UNIX, Fire Bug, IE Developer Tools, REST Web Services, Bugzilla, Agile, SCRUM.
Caris Life sciences – Irving, TX 08/2010 – 01/2012
Sr. Java / J2EE Consultant
Provide support to MS1/Carismatic system by analyzing the root cause of the bugs, fix them, unit test and deploy them to production.
Participated in the Registry Phase-II design discussions, built web pages for various iterations, unit test and deploy to test environments.
Built web pages using JSP, JSTL, DHTML, Ajax and Spring Controllers (mostly FormController), unit tested them and deployed into various test environments.
Extensively used JQuery java script library to write java script on the web pages to build tables dynamically and manipulate the inner-HTML of different components.
Resolved cross browser issues and provided support for Internet Explorer, Firefox and Chrome.
Resolved the pitfalls in implementing equals and compareTo methods for domain objects that were misbehaving when hibernated proxies were passed.
Built Java bean / POJO classes (domain objects/entities) and mapped them to database tables and columns using JPA and hibernate annotations.
Merged Code between different branches in the Sub Version repository, tag the production releases and create new branches for the development team as and when necessary.
Prepare DDL/DML scripts necessary for the build, build ear files for production builds and coordinate the production deployments by sending out deployment instructions.
Built RESTful web-services using Spring3 that de-serializes a JSON object and sends back a JSON response object.
Configured Spring transaction management (local entity manager factory) to work with JPA and hibernate and built Spring service classes and DAO’s to perform the persistence operations (CRUD).
Upgraded MS1 application to work with Spring 3.0.5 from Spring 2.5
Participated in Daily Scrum meetings to discuss about the status of tasks assigned and report the status of them.
Environment: HTML, CSS, Java (JDK 1.6), SQL, Glassfish 2.x, TOAD for My SQL, Ant, My Eclipse 6.6, DHTML, Java Script, JSON, JQuery 1.5, AJAX, Spring 2.5/3.x, Hibernate 3.x, Spring MVC, Log4J, My SQL 5.x, JPA 1.x, Glassfish 2.x, Fire Bug, IE Developer Tools, REST Web Services, Bugzilla, Agile, SCRUM.
JP Morgan Chase (JPMC) WSS/TSS – Dallas, TX 11/2009 – 07/2010
Transaction Initiation (TI)
Technical Officer (Java Developer)
Identify use cases from Business requirements, document and prepare the design for review with technology architecture team.
Identify and build request/response objects for web services for the “User” module of CCAP replacement project.
Built user interface (UI) for “User Preferences” module using facelets (for templating), JSF 1.1 and AJAX.
Transaction and log management using Spring AOP.
Constructed Hibernate mappings for java classes.
Mapped entities using JPA (Java Persistence API) annotations and coded service and DAO classes to persist (add/update/delete) them.
Build the application and deploy it to Web sphere 5.1 application server and perform unit testing.
Enhance principal broker / clearing broker look up screens to include mnemonic and ABA number information as requested by business clients.
Write JUNIT test cases as part of the development execute and test.
Create and co-ordinate ECMS (Enterprise Change Management System) tickets to get the application code/database changes rolled out into test environments (QA and UAT).
Created database deployment scripts that involved creating database objects such as tables, indexes etc.
Environment: HTML, CSS, Java (JDK 1.4/1.6), SQL, UNIX (AIX), Web sphere 5.1, JBOSS 4.x, Putty, PL/SQL Developer, Ant, IntelliJ Idea 8.1, Eclipse 3.4/ Galelio, Win SCP, JSF 1.1, Tomahawk, AJAX, Facelets, Spring 2.0, Hibernate 3.0/3.4, Log4J, JUNIT, Oracle 188.8.131.52, JAX WS Web Services, IE Developer Tools, ECMS.
JP Morgan Chase (JPMC) IB– Houston, TX 06/2006 – 10/2009
CMENT/ MRMD (Market Risk Market Data)/ RMD (Risk Market Data)
Fully prepared the development environment by installing Informatica, migrating the necessary scripts from VARS and setting up the necessary paths and class paths to be able to run the Informatica repository server.
Developed ETL (Informatica) mappings/workflows to load data into the data mart
Extensively used Source Qualifier, Aggregator, Joiner, Filter, Expression, Router and Sequence transformations of Informatica to develop mappings.
Created users using Repository manager, deployed mappings/workflows using import/export on to SIT servers and assisted the prod deployment.
Converted legacy C++ code (Check Gaps and Bloomberg Request Generation) to stand alone java applications
Analyzed the objects necessary for the application (OO Analysis) and prepared the conceptual modal.
Transformed the conceptual modal into a physical relational modal (OO Design).
Developed Use Case Diagrams (UML) for the application using Rational Requisite Pro.
Documentation of the entire system using Data flow Diagrams
Built front end pages for MD Console application using JSF 1.1, facelets (used to build the templates) and tomahawk components.
Validations are done for the front-end pages and various AJAX events were handled.
Persisted the objects using Hibernate 3.x (ORM framework) and Spring 2.x frame (transaction management)
Participated in full life cycle (SDLC) of the product starting from analysis, build, unit testing in development, testing in SIT and UAT and finally pushing the code into production and supporting there after.
Built the code to parse the XML configuration file to obtain database connection details.
Developed shell scripts that process the files from vendors (Concorde / Data Query that is internal to JPM) and load the data into oracle database.
Resolved autosys and Informatica related path/class path issues in the process of migration to various environments.
Created JIL templates for autosys jobs and box that holds the children.
Monitored daily load jobs and fixed Level 3 production issues.
Interact with the offshore team, guide/lead them and resolve any issues in the process.
Followed Agile development methodology (iterative) and used JIRA/Alacrity to keep track of the open / pending issues
Handwritten queries against Oracle 9.x/10g and Sybase servers and oracle PL/SQL code blocks and procedures (Sybase and Oracle)
Oracle 9.x installation on client machines and set up tnsnames
Created tables, indexes (unique), stored procedures, PL/SQL code blocks, triggers and packages against Oracle schema.
Market Risk Market Data (MRMD)
Developed Informatica work-flow to load the CMBS data from DataQuery (an internal system to JPMC)
Fixed the generic loader shell script to better handle the reload process.
CMENT (Complete Market Environment)
Worked on several enhancements/bug fixes
Developed a Perl script that checks for the availability of EDF data availability in Ginger database and continue/abort the loading process.
Developed the Informatica mappings/work-flow for loading equity index prices from Bloomberg.
Developed the XML interface for Bloomberg equity prices
Added the curve owner name and SID to the XML response for CDS data.
Environment: JDK 1.4.x/1.5.x, Servlets, Java Beans, Weblogic 8.1/9.x, Oracle 9.0/10g, Sybase, Clear Case, Struts 1.2.x, JSF 1.1, Ajax, Eclipse 3.x, Log 4J, Hibernate 3.0, Spring 2.0, Windows XP, UNIX (Solaris 8/10), Informatica 6.x/7.x/8.x, Perl 5.8.4, DB Artisan 7.x /8.5 TOAD 9.x, Autosys, awk, XML, Java Script, IE Developer Tools.
Jackson National Life Insurance (JNL) – Lansing, MI 05/2006 – 06/2006
Developed JSP pages for Time Log Entry / Edit, History.
Developed DAO class that does the back-end work (insertion/updating/deletion etc.)
Deployed the war file into tomcat web server and tested it.
Environment: HTML, CSS, JSP, JDBC, Struts 1.1, Net Beans 5.0, Tomcat 5.8, DB2, Rapid SQL Windows XP
Michigan Department of Transportation (MDOT) – Lansing, MI 12/2005 – 05/2006
PHD (Pavement History Database)
Prepared Use cases, Activity Diagrams and Class Diagrams (UML) for the Administration, Post Construction and Inquiry Selection modules.
Prepared the Entity Relationship diagrams (ER Diagrams) and data modeling (generation of DDL) through Erwin
Developed JSP pages for New Layer, Layer updating, and Inquiry Selection Modules.
Developed Action forms, and Action classes for Pavement management (Admin) and Inquiry Selection modules.
Developed CMP 2.0 entity beans for the entities Layer, Attribute, Layer Attribute and SegmentViewInfo etc.
Developed session beans such as AdminManagerBean and PCRManagerBean that employ the Session Facade pattern.
Extensively used struts tags (bean, nested, logic) and JSTL core tags.
Created Database views, mapped them to Value Object classes using hibernate mappings, and developed ViewManager session bean that pulls the data from various views.
Written PL/SQL function to get to and from intersections for a given route (PR Number, PR BMP, and PR EMP).
Creation of tables indexes in Oracle9i schema.
Environment: HTML, CSS, JSP, Servlets, EJB 2.0, Java Beans, Web sphere 5.1.1/5.0, Oracle 9.0, Rational Requisite Pro, Clear Case, Struts, WSAD, Log 4J, Hibernate 2.x, Windows 2000, UNIX.
Qwest Communications – Dublin, OH 02/2005 – 12/2005
eFlow (Enterprise Workflow)
Developed Daily Processes Report that lists out the number of active, finished and started processes for each and every template on a given day.
Participated in technical design reviews and actively involved in Functional Design.
Developed MDB (Message Driven Bean) for Work Order Process that listens to JMS Queue and initiates the process.
Developed handler classes (java classes) for each task of the Work Order Process that performs business logic by calling Order Manager API (OM API)
Developed, deployed, and tested Stateless Session Beans and exposed them as web services (SOA) to the other in house applications.
Developed Customer Order processing business process using Web Logic Workshop.
Developed Action classes, Enterprise Java Beans (EJB) Session Beans using DAO design pattern
Developed Order Manager JSP pages, Servlets, deployed and tested on Web Logic Server.
Created database objects such as tables, views.
Environment: HTML, Java Script, CSS, JSP, Servlets, EJB 2.0, Java Beans, XML, JMS (Weblogic Java Messaging Broker), TIBCO, Web logic 7.0/8.1, Oracle 9.0, CVS 1.3, Struts, Web logic 7.0 Integration Studio, Web services, Apache Axis, Log4j, Ant, Castor, Hibernate, Windows 2000
Met Life – Greenville, SC 04/2004 – 01/2005
Long Term Care (LTC)
E Report Developer
Designed custom component library
Scheduling of reports on the actuate server
Dynamic SQL to get data based on parameters
Worked with DBA to fine tune queries to optimize performance
Exported report data to spread sheets and text files automatically
Environment: Actuate 6.0 / DB2 / Windows XP / Star Team, Windows NT
Bank of America – Charlotte, NC 10/2003 – 04/2004
Kadiri Reporting tool
Used Dynamic SQL to get data based on parameters.
Exported data from Actuate Reports to Excel spreadsheet.
Created reports with Different Layouts.
Scheduling the reports on the Actuate eReport Server.
Migration of reports from Actuate 6.0 to Actuate 7.0
Environment: Actuate 6.0 / 7.0, Oracle 8.1.7, Windows NT/2000 / Visual Source Safe 6.0
EDUCATION / CERTIFICATION:
Master of Science in Electrical Engineering 08/2000 – 08/2002
University of Missouri -Rolla.
Bachelor of Technology in Electronics & Communications 08/1994 – 08/1998
Nagarjuna University, India.
Visa Status: Green Card / Permanent Resident