- Around 7+ years of experience in designing client/server and web based applications using J2EE technologies, object - oriented and Software development life cycle concepts, JDBC, Servlets, JSP, JSTL, JavaBeans, MVC, Struts, Swing, RMI, EJB, JMS, SOAP, spring, Hibernate.
- Expertise in publishing and consuming web services based on SOAP, REST protocols.
- Experience in implementing OOPS concepts using Java/J2EE technologies such as Core Java, JDBC, JSP, MVC, spring and Struts.
- Experience on AWS cloud platform and its features including EC2, EBS, VPC, RDS, Cloud Watch, Cloud Trail, Auto scaling, CloudFront, IAM, AMI, S3, SES, SQS, SNS, Glacier, SMS, OpsWorks and Route53.
- Worked on setting up the life cycle policies to back the data from AWS S3 to AWS Glacier
- Worked with various AWS EC2 and S3 CLI tools
- Worked with Docker for convenient environment setup for development and testing.
- Good understanding of networking concepts including TCP/IP, Routing, DNS, Firewall, Virtualization, switches, different networking layers and protocols etc.
- Expertise in configuring, using & administering version control systems like GIT, ClearCase, Subversion and CVS.
- Good understanding of RDBMS through Database Design, writing queries and stored procedures using databases like SQL Server and MySQL, Oracle 10g, PL/SQL and previous experience in work extensively using oracle.
- Experience in developing user interfaces with HTML, XML, XSD and CSS.
- Experience in using Java, JEE, J2EE design Patterns like Singleton, Factory, MVC, Front Controller, Business Delegate, Service Locator, Session Façade, Transfer Object and DAO for reusing most effective and efficient strategies.
- Strong understanding of Data Structures and algorithms.
- Understanding of designing UML designs like class diagrams, cases and sequence diagrams.
- Experience working with web services using SOAP, UDDI, WSDL, REST and implementation using APACHE AXIS and APACHE CXF.
- Thorough knowledge in Test Driven Development using Unit testing with JUnit 3.8/4.0, and ANT build environment.
- Experience with using extreme programming, test driven development.
- Excellent understanding of SQL concepts and experience in working with relational databases.
- Experience with content management systems like Joomla, WordPress.
- Experience in creating Technical and Functional design documents.
- Excellent technical, logical, code debugging and problem-solving capabilities.
- Experience with continuous integration and continuous deployment practices.
Java Technologies: JSP, Servlets, JSTL, EJB, JDBC, JMS, JAXB, JAX-RS, JAX-WS Elastic search, Log stash, Kibana, AWS, Docker
Java Frameworks: Spring, Struts, Hibernate, JSF, Netflix OSS
Web Services: SOAP, REST, SOAPUI, DHC, Postman
IDEs: Eclipse, NetBeans, IntelliJ, Brackets, ORACLE SQL developer
Databases: MySQL, PL/SQL, ORACLE, MongoDB, HBase, DynamoDB
Application Servers: WebLogic, IBM WebSphere, JBOSS, Glassfish, Apache Tomcat
Build Scripts: Ant, Maven, Gradle
Design Methodologies: OOAD, SDLC, Agile, UML
Operating Systems: Windows, Linux, Mac OS
Version Control Tools: Subversion, CVS, Git, ClearCase
Full Stack Java Developer
- Worked on Back End and Front End developing endpoints in the Java and angular for various services.
- Worked on spring MVC, spring JDBC, spring boot, hibernate, spring data JPA, Angular, HTML, Typescript and other advanced back end and front end technologies.
- Wrote complex queries in PostgreSQL and integrated them with backend API’s.
- Worked on writing batch jobs using spring boot and spring batch for data intensive CRUD operations.
- Worked on eligibility and confirmation module that interfaces with Corticon server and coordinated with Corticon team to provide proper input and extracting output from the Corticon server.
- Worked on the Customer Registration process by interfacing with other technologies like OpenAM and Sail point.
- Worked on developing user analytics and email functionalities using Java libraries.
- Worked on fixing security vulnerabilities in the application.
- Worked on improving the performance of the application by optimizing the code.
- Worked with Business team, Case Workers and other developers to gather the requirements and then implement upon the refined requirements.
- Worked across various teams and different parts of the application to ensure the smooth flow from end to end.
- Worked on providing production support after the application is deployed to production.
- Worked on fixing defects and bugs in various environments after testing.
- Worked on JBoss fuse for integrating with external government interfaces for validations of user data.
- Used Git for version control, Maven for the builds, and Jenkins for CI/CD.
- Wrote Junit tests using JUNIT and JMock, Postman for testing Rest web services, Soap UI for testing Soap Web Services.
- Participated in daily agile and scrum meetings.
Environment: HTML, CSS, Angular 4/5/7, Java 1.8, PostgreSQL, Spring MVC, Spring AOP, Spring JDBC, Spring batch, Spring Boot, Hibernate, JBOSS Fuse, REST, SOAP, AWS, Docker, Jenkins, Git, Qlik, Bit bucket, Source Tree, JAWS, Corticon
- Used Spring to develop the main functionality of the application and used various modules like Spring IOC, Spring security, Spring JDBC, Spring AOP.
- Worked with spring JDBCtemplate to handle the database operations for few functionalities of the application while the rest of the application used hibernate.
- Worked on adding hibernate model objects and hibernate functionality for adding different tasks like creating batch, searching batch, creating an inventory report, creating and maintaining users
- Used velocity as the java templating library for the front end.
- Implemented login and logout functionalities for the application and secured the application access using spring security.
- Followed MVC model for the application design with web, service and DAO layers.
- Worked on validation and documentation of filling in the TAR forms and releasing it to surge.
- Used SOAP web services to call the Surge application internal to CA-MMIS to release the TAR forms and for validating the TAR forms.
- Worked on deploying the application to different prototype servers after the development to test the functionality. Installed the tomcat on the newly allocated prototype servers and deployed the war files.
- Worked on making the application use log4j2.
- Used FileZilla to transfer the files between the local development environment and prototype servers. used git for version control.
- Wrote Junit tests using JUNIT and JMock.
- Worked on converting the legacy motion based services to modern isolated services including course-service, user profile-service, OAuth-service, upload-service, activity-service, goal-service, application-service, dashboard-service etc.
- Worked with different microservices architectures like event driven architecture, polyglot persistence, strangler pattern, developing cloud native applications, implementing API gateway, Inter process communication using RabbitMQ, using Netflix OSS for service discovery, using continuous Integration and continuous delivery best practices, making services highly available, containerizing microservices application etc.
- Worked with google maps and open street maps for endpoints in course-service which uses the location data. worked with different modules of spring including spring boot, spring batch, spring integration, spring cloud etc.
- Designed the class and sequence diagrams in confluence, documented and implemented all the endpoints of Goal-service from the scratch.
- Worked on handling different kinds of data including GPX, TCX, AXM, XML, JSON, RSS, FIT as these different formats are used by different services for exporting and importing the device data from the user.
- Worked with AWS s3 while working with route segments of course functionality and the data is stored in s3 buckets.
- Wrote complex SQL queries in the persistence layer to communicate with oracle databases.
- Converted the persistence layer implementations from hibernate in legacy to spring JDBC.
- Converted the rest API endpoints in legacy implemented using Enunciate in legacy to modern API using jersey.
- Used Hystrix to communicate between the micro services to ensure fault tolerance.
- Migrate oracle to SQL server.
- Converted oracle queries to use HBase and Elasticsearch for faster processing of queries.
- Worked with different caching technologies like Memcached and Ehcache.
- Used SOAP calls to communicate with middleware services in Garmin and for synchronizing the user data between the databases.
- Used OAuth for security, authentication and authorization purposes for the entire application.
- Implement modules into Node JS to integrate with design and requirements and also create Restful web services/ API's using Node.js.
- Used Jenkins for continuous Integration and deploying the application to different environments.
- Worked with Rundeck for configuration management tasks including updating database, configuration files, Elastic search, and RabbitMQ queue properties and managing the startup and shutdown of tomcat and JBoss servers
- Automated deployment to development and production environments using Linux shell scripting.
- Used crucible for creating code reviews.
- Apply Agile and CI/CD methodologies to everyday work with daily scrums, agile testing, adaptive planning, and test-driven development TDD.
- Wrote unit tests using Easymock and Mockito and used JUNIT test cases with H2 embedded databases for testing the persistence layer.
- Worked on JIRA for keeping track of tasks, user stories and for bug fixing.
- Used SVN and git for version control of backend and frontend repositories respectively and maven as a build tool.