See all developers
Gouri Kotakadi Senior Full-stack Developer

Gouri Kotakadi

  • London, UK
  • 20 years
Gouri is now available for hire Hire Gouri

Gouri is IT professional with many years of experience in software industry, involved in developing and supporting multi-tier applications. He has a good working knowledge and was involved in all stages of software development life cycle using Agile (Scrum), TDD, pair programming and Waterfall. He has a solid understanding in MVC, AOP concepts, Struts, Spring and Hibernate frameworks.

Gouri prooved ability to meet deadlines, prioritize requirements, providing alternative solutions and interacting with users as well as ability to work independently and effectively within a team. His projects differed - from retail banking, mortgages, insurance, pensions, transportation, ticketing and financial service applications.

Programming languages

  • Java, J2EE, Angular, JavaScript, React, React Native, jQuery, HTML, XSL, XSLT, SQL, PL/SQL, Unix Shell Scripts

Databases

  • Oracle 9/11, Oracle NoSQL, Sybase, MySql and Access

Special Software

  • Spring Boot, Spring, MVC, WebFlow, Spring Integration, Spring Batch, EJB 3, Hibernate, JAXB, SOAP, REST, AJAX, JSON, Axis, Ant, FileNet, Eclipse IDE, Apache validation, XMLBeans, Velocity, QuickBuild, Jenkins, Docker, Kafka, SOAP UI, Liquibase, DbUnit, SVN, SSH, NodeJS, Camel, Apache Avro, Wiremock

Computer System

  • Windows, Linux, Unix, MVS, OS/390, IBM Mainframe, AWS

Analysis

  • Object Oriented Design using UML, System Architect

Application services

  • IBM Websphere, Apache Tomcat, Weblogic

Version control

  • GIT, SVN, Star Team, PVCS

Skills and experiences

Skills and experiences

Senior Software Engineer

Cubic Transportation Systems, Redhill, Jun 2018 - present

Project

  • Cubic delivers integrated systems for transportation and related payment solutions by making use of several in-house developed applications. These applications are orchestrated in such a way that they can be customized for different clients based on their requirements and can be easily integrated with their existing systems if any. I am mostly involved in implementing changes to these applications for Boston, Brisbane and Scotrail projects.

Roles and responsibilities

  • Implemented changes to several REST API applications built using Spring and/or Spring Boot.
  • Developed a common crypto component to encrypt/decrypt database column data based on configuration. This include entity listener class, access JWT and refresh JWT generation upon successful customer authentication and validating JWT and checking claims against API params. This component is written in such a way that it can be easily integrated with minimal configuration.
  • Apigee API gateway is changed to use these JWT tokens as OAuth access and refresh tokens
  • Involved in developing Key Management System(KMS) for ticket validation devices
  • Implementing changes and bug fixes to Customer Management Console(CMC) application written in Angular
  • React Native TFL Oyster mobile app development and test support
  • Integration test support and defect resolution
  • Created POC for fraud checks stories using Apache Storm
  • Deploying applications onto Azure cloud for SIT/UAT environments
  • Writing mock and integration tests for the changed code

Hardware/OS : IBM-PC Compatible / Windows 10, Mac, Azure Cloud

Languages : Java 8, JEE6

Special Software : Spring, Spring Boot, Spring Security, Kafka, REST, JPA, Oracle, SQL, Liquibase, Angular, React Native, NodeJS, HTML, CSS, Javascript, Apache Camel, Apache Storm, Jenkins, Junit, Mockito, Hamcrest, Maven, Gradle, Docker, JSON, JIRA, GIT, BigBucket

Senior Java Developer

BT, Ipswich, Dec 2016 – May 2018

Project

  • Resolve is a key application for consumer line of business of BT. Primary role of Resolve is within the Trouble to Resolve (T2R) phase of the customer is used by the customers and call centre agents to resolve any issues with the products and services provided. This application interacts with several backend applications while making use of the issue resolution process flow defined by the business for each product/service.

Roles and responsibilities

  • Design and development of enhancement stories to the REST based orchestration application and several other web applications build using Spring and/or Spring Boot
  • Changes to UI and AngularJS application
  • Integration test support and defect resolution
  • Live issue analysis and resolution
  • Building release artifacts and release management
  • Writing unit test cases for the changed code and maintaining the CI system

Hardware/OS : IBM-PC Compatible / Windows 8

Languages : Java 8, JEE6

Special Software : Spring, Spring Webflow, Spring Boot, Spring Security, REST, JPA, Oracle NoSQL, SQL, HTML, CSS, Javascript, Angular JS, Gulp, Apache Camel, Jenkins, Junit, Mockito, Hamcrest, Maven, JSON, Apache Avro, Apache Axis, Weblogic and JIRA

Lead Java/Oracle Developer

Co-operative Bank (Capgemini), Manchester, Jul 2016 – Dec 2016

Project

  • Digital – Online banking enhancement project

Roles and responsibilities

  • Design and development of new REST services
  • Live application support and issue resolution
  • Gathering requirements, Sprint management, attending daily stand-ups, planning meetings
  • Producing ADD(Application Design Document) for the new interfaces
  • Guiding off-shore team in the development and doing code reviews
  • Building release artifacts and release management
  • Integration test support and defect management
  • Writing PL/SQLs and SQL tuning
  • Maintaining Oracle database instance running on Linux server
  • Maintaining IBM Websphere server and IBM MQ server which are used for smoke testing applications before release

Hardware/OS : IBM-PC Compatible / Windows 7

Languages : Java 7, JEE6

Special Software : Spring, Spring Integration, Spring Batch, Struts, JMS, JAX-RS, EJB3, JPA/EclipseLink, Scala, Oracle 10g Database, PL/SQL, SQL, HTML, CSS, Javascript, ActiveMQ, Akka, Jenkins, Junit, Mockito, Eclipse, Maven, Artifactory, JSON, Logback, Swagger, Swagger UI, Websphere and JIRA

Senior Java/Oracle Developer

Co-operative Bank (Steria), Manchester, Apr 2014 – Apr 2016

Project

  • Digital – Online banking enhancement project

Roles and responsibilities

  • Porting existing Struts web application’s business logic to new JEE6 REST services based mid-tier application
  • Writing ADDs(Application Design Document) for the business requirements adhering to the TAD (Technical Architecture Document)
  • Migrating and enhancing internal customer service applications to work with Oracle Database
  • Integrated existing mainframe MQ services using Spring integration
  • Wrote several batch applications using Spring Batch
  • Writing PL/SQLs and SQL tuning
  • Wrote interceptors for error handling, service security access validation and invocation logging
  • Maintaining Jenkins CI environment
  • Maintaining IBM Websphere server and IBM MQ server which are used for smoke testing applications before release
  • Maintaining Oracle database instance running on Linux server
  • Maintaining Tomcat running on Linux server and several stub applications running on it
  • Writing unit tests using Mockito and integration tests running in an embedded container with ActiveMQ as JMS gateway
  • Doing code reviews, preparing test completion reports and release management
  • Working and interacting with off-shore teams
  • SIT/INT/UAT support and defect fixing

Hardware/OS : IBM-PC Compatible / Windows 7 / Cent-OS Linux

Languages : Java 7, JEE6

Special Software : Spring, Spring Integration, Spring Batch, Struts, JMS, JAX-RS, EJB3, JPA/EclipseLink, Oracle 10g Database, PL/SQL, SQL, HTML, CSS, Javascript, ActiveMQ, Jenkins, Junit, Mockito, NetBeans, Maven, Artifactory, JSON, Logback, Swagger, Swagger UI, Websphere and JIRA

Java Lead Developer

ING Direct (brought by Barclays), Feb 2013 – Mar 2014

Project

  • Verint Call Recorder upgrade, Data Migration and Archiving and live system support

Roles and responsibilities

  • Changing the existing call center application to pause and resume recording in order to skip the recording of DTMF tones when customer inputting authentication credentials in the phone channel
  • Developed a multi-threaded call generator application for the performance test purposes, which reduced the usage of third party application
  • Involved in the design and development of multi-threaded application in an Agile environment utilizing test driven development approach to migrate data and archive the customer documents which include extracting files from Filenet content engine and file system, creating zip files
  • Writing unit test cases for the changed code and maintaining the CI system
  • Supporting junior members of the production support team

Hardware/OS : IBM-PC Compatible / Windows XP

Languages : Java 6/7, J2EE, XML

Special Software :Tomcat, Spring MVC 3.0, JMockit, SQL, Oracle 9/10g Database, Junit, Eclipse, Javascript, jQuery, HTML, CSS, Maven

Senior Java Developer

National Trust, Swindon, Feb2012 – Jan 2013

Project

  • MasterCard CDF integration and enhancements to the internal applications include eExpenses, CPI (Conservation Performance Indicators), Metering and Monitoring, Support Groups, Volunteering

Roles and Responsibilities

  • Developed an application to integrate MasterCard statement file with the existing financial system (APTOS). Steps include downloading XML file from the SFTP server, PGP decryption using private key, unmarshalling XML file using JAXB and converting to another format.
  • Coding and re-factoring of existing applications while implementing the changes
  • Converting NetBeans projects to Maven projects
  • Writing unit test cases for the changed code
  • UAT Deployment and defect fixing
  • Production and UAT application deployment onto Linux servers
  • Maintaining UAT and Production Linux servers on public cloud
  • Front office support for several business critical applications

Hardware/OS : IBM-PC Compatible / Windows XP

Languages : Java 1.6, J2EE, XML

Special Software : Tomcat Application Server, Spring MVC 2.0/3.0, Open JPA, Hibernate, Spring Batch, SQL, Oracle 9/10g Database, Envers, Junit, STS, NetBeans, JIRA, Javascript, jQuery, HTML, CSS, Velocity, Jenkins, Maven, AWS

Senior Java/Oracle Analyst Developer

ING Direct, Jul 2007 – Sept 2011

Project

  • Faster Payments, FRSA, ISA Transfer In/Out, Oyster (Bonus Saver and Growth Saver), Web Enhancement, Mobile, Honey Bee (Current Account)

Roles and Responsibilities

  • Designing the application solution for the customer transactional site, call center application and fulfillment using functional specifications. Suggesting suitable alternate solutions for the business requirements.
  • Coding and re-factoring of java classes, filters, jsps, xsl and html pages in all layers of the application in an agile environment utilizing a test driven development approach
  • Involved in developing frameworks for data driven configurable products, product hierarchies, wrapper classes for filenet workflow engine, simulators for third party interfaces like 3D-secure, Experian credit check, HSBC card payments, test data generation engine for unit tests and mock frameworks
  • Implementing ehCache and identifying caching opportunities
  • Fixing ethical hack issues, OWASP ESAPI implementation and other security related issues
  • Performance tuning of the application, database and SQL queries
  • Product backlog and sprint backlog maintenance
  • Maintaining overnight and hourly continuous integration tests
  • Providing application support for the testing team
  • Trained and lead an offshore team to make sure the processes and coding standards are followed
  • Setting sprint goals for the offshore team o Rebasing, merging and promoting code using source control software Starteam

Hardware/OS : IBM-PC Compatible / Windows XP

Languages : Java 1.6, J2EE, XML, XSLT, JSP, Jquery, SQL, PL-SQL

Special Software : Web Sphere Application Server, MVC, Oracle 11g Database, PL/SQLs, Eclipse, Star Team, Toad for Oracle, Webflow, JUnit, JWebUnit, Ajax, JSON, Drools, Struts, Avaya Dialog Designer for IVR, ESAPI, Dozer, QuickBuild, SOAP, SOAP UI, Axis, Velocity, DbUnit, HTML, CSS, Javascript

Java Developer

Universities and Colleges Admission Service (UCAS), Mar 2007 – Jun 2007

Project

  • Performance Tuning of Link Products

Roles and Responsibilities

  • Fine tuning of SQLs and PL-SQL scripts using execution plans and closely working with DBA
  • Designed and developed a new Singleton class for the tuned SQLs using XML and JAXB
  • Rewriting of Java Web Services code to use the new Singleton Class
  •  Developed JUnit test cases for the new XMLLink product
  • Providing evidence that the tuned code and SQLs are performing better than original

Hardware/OS : IBM-PC Compatible / Windows XP - SUN Solaris / Unix

Languages : Java, J2EE, EJBs, XML, JAXB, Hibernate, SQL, PL-SQL

Special Software : Oracle 9g Application Server, Oracle 9g Database, JDeveloper 10g, VSS, Toad for Oracle

Analyst Programmer

Siemens Business Services (SBS), Apr 2001 – Oct 2006

Project

  • VOSA-MOT Computerisation

Roles and Responsibilities

  • As I started in the initial stages of the project, was involved in doing low-level design of the functions using SA (System Architect) design modeling tool
  • Designing the VTS (Vehicle Testing Station) client functions in MVC Struts framework, front end screens, UML diagrams, preparing program specifications and Test plans
  •  Coding of Java programs, controllers, servlets, JSPs, JSP custom tag libraries and JDBC components, Javascript, XML, XSLT, HTML pages
  • Coding Java wrapper classes for data types and XML
  • Involved in porting client side MVC framework to Spring
  • Setting up the VTS development environment with Linux, Apache and Tomcat
  • Maintaining the test database, maintaining test data in excel files and SQL script files, loading the data into database, constraint checking and maintaining the data integrity between the tables
  • Liaison with Testing and design teams on resolving defects
  • Defect tracking using PVCS Dimensions and version control
  • Providing adequate evidence that tests have been properly performed
  • Performed smoke and sanity testing in the pre-production and live environments
  • Involved in resolving daily live system issues and in day to day operations with support team. I was also involved in doing the impact analysis for the change requests includes finding impacted modules, changes required and time estimates for that work.

Hardware/OS : IBM-PC Compatible/WindowsNT/SuseLinux-BS2000 Siemens Mainframe

Languages : Java, J2EE, JSP, Struts, Spring, Javascript, XML, XSL, XSLT, PERL, SQL, AJAX

Special Software : JBoss Application Server, SESAM SQL Database, SA (System Architect), Ant, Eclipse IDE, Apache, Tomcat, PVCS

Educations and Certifications

Master of Technology in Industrial Structures from Regional Engineering College, Surathkal, India

Bachelor of Technology in Engineering from S.V. University College of Engineering, Tirupati, India

CSS

ING Direct, 2011

File-net Content Manager and BPM – Java API Programming

IBM and ING Direct, 2010

Performance Tuning of SQLs

Oracle, 2009
Want to hire Gouri Kotakadi or just want to talk? Schedule chat with Gouri

Other developers