• I am a graduate with specialisation in Computer Science and Engineering, having experience of 13 years and 1 month with a strong background in software design, development, testing, business requirements gathering and analysis using Java/J2EE technologies.
• I have worked on telecom, banking & travel domain and various other products and web-based projects as a developer and architect.
• I have majorly worked on web applications on both server and client side.
• UI development using Servlet/JSP, HTML CSS, Java Script, JQuery, JSTL, Custom Tags, Apache velocity, Apache Tiles. WCAG implementation
• I have worked on server side using following technologies.
Microservices using Spring boot and Spring cloud following Domain Driven Design approach. Hands on experience in microservices patterns such as Config server, Registry, circuit breaker, transactional outbox, asyc retry etc.
Spring modules - BOOT, DI, AOP, MVC, Data, JDBC, REST, WS, Transaction, Security, Reactor (Reactive programming)
REST web services using Spring MVC Rest and API management using Swagger/OpenAPI 3.0
Application security using Spring Security, JWT, OpenID/OAuth2, LDAP, ACL and Keycloak, OWASP
Expertise in Jasper reports, iReport and developing ETL applications.
Email designing using Freemarker, campaign management and scheduling Quartz, execution using Spring mail and Apache James.
Fair knowledge of Socket programming and multithreading using Java Concurrent API, Java 8 lambada, stream, functional and reactive programming.
Extensive experience on Databases – MySQL, DB2, Oracle, PostgreSQL, DAO and Repository pattern implementation using SQL, JDBC, Spring Data, Spring JDBC, iBatis and Hibernate.
Hibernate 2nd level and query cache. Entity versioning and audit logs using Hibernate Envers and spring data. Bean validation using Hibernate validator.
Good experience in Core Design patterns, Integration patterns using Apache Camel, messaging using JMS/ActiveMQ.
Theoretical knowledge Jenkins, Docker, Kubernetes etc.
• Expert contributor to all phases of Software Development Life Cycle (SDLC) including Requirement Gathering & Analysis. Architecture design, documenting HLD/LLD, Use Cases and User Stories writing, bug fixing, enhancements and refactoring, Test Planning & Execution, Build and Deployment CI/CD using Maven, Gradle, Docker and Jenkins.
• Strong knowledge of various SDLC lifecycles and working experience in Agile (Scrum) methodology and practices.
• Good team player and experience in leading teams towards achieving critical deadlines.
• Expertise in writing unit tests using JUnit and Mockito and Integration testing.
• Clean coder practices and code reviews, Spot Bugs, Sonar Cube.
• I believe in supporting and encouraging fellow team member and keeping me updated with latest technologies, methodologies and best practices.