Full Stack Developer Resume
SUMMARY
- 5+ years working experience in Java Full - Stack Development
- Solid skills in Algorithm and Data Structure
- Strong knowledge of Java core concepts including Object-Oriented Programming, Concurrency and Multi-threading, Exception handling, Collections, Serialization, I/O, and Garbage Collection
- Proficient in Design Pattern including Builder, Singleton, Factory Method, Abstract Factory, Adapter, Proxy, Iterator, Observer, etc.
- Extensively usage of the HTTP request (GET, PUT, POST, DELETE, HEAD, OPTIONS) and handling response
- Extensively developed J2EE applications including Servlet, JSP, JSTL, JNDI, JDBC, etc.
- Skillful in SQL queries, Views, Stored Functions, and Stored Procedures
- Rich experience with ORM tools, including Hibernate, which implements Java Persistence API (JPA), and CURD on database manipulation with HQL and Criteria
- Extensively implemented MVC (Model, View, Controller) structural web application
- Excellent knowledge in Spring Core with Dependency Injection (DI), Beans, IoC, and Annotations
- Hands-on experience with Spring MVC on DispatchServlet, HttpMessageConverter
- Deep understanding in Spring Boot with RestController and JSON Mapping
- Rich experience in Spring Security including SecurityContextHolder, Principal, Filter, and JWT
- In-depth implementation with Spring Data JPA with Data Repositories
- Hands-on experience with Spring Exception handling with Spring AOP (Aspect Oriented Programming) and ControllerAdvice
- Rich skills with Swagger for Rest Documentation
- Substantial work in Microservice including Spring Cloud, Gateway, Eureka, and Feign
- Robust knowledge in Fault Tolerance with Circuit Breaker including Resilient4j and Hystrix
- Solid skills with Asynchronous Programming including ExecutorService and @Async
- Solid experience in Cloud service, including RDS and S3
- Excellent knowledge of NoSQL database, including MongoDB
- Hands-on experience with In-memory data store including Redis
- Deep understanding in messaging with AMQP, including RabbitMQ and its Pub/Sub pattern
- Proficient in Angular, including Dependency Injection with Service, Observable, Components, Pipes, and Routes
- Sound implementation with React development, including Redux, React-Router, Redux, Thunk, and HOC
- Extensively used Java testing and Test-Driven Development (TDD) with JUnit and Mockito, and code coverage with JaCoCo
- Skillful on Spring Boot Actuator for monitoring with /info, /health and /metrics endpoints
- Excellent worked in Batch processing with Spring Batch
- Rich experience in Java Logging with Log4j and ELK (Elastic Search, Logstash, Kibana)
- Proficient in Software Development Life Cycle (SDLC) and software development methods like Agile Development and Scrum Framework
- Expert at version control tool like Git and Jira for ticket tracking
- Configured CI/CD pipeline for the application using Jenkins and Kubernetes
TECHNICAL SKILLS
Programming Languages: Java, SQL, HTML/CSS, JavaScript, C#, C/C++, Python, Go, PHP, Scala
Frontend: Angular, React, Redux, Thunk, Axios, jQuery, Ajax, Bootstrap
Backend: Servlet, JSP, JSTL, Hibernate, Spring Core, Spring MVC, Spring Boot, Data Repository, RabbitMQ, AOP, Actuator, Spring Security, Spring Cloud, Microservices, Eureka, Feign, Gateway, JWT, Resilient4j
Web development: REST, SOAP, AMQP
Database: MySQL, MongoDB, Oracle SQL, H2, Redis
Tools: Maven, Postman, Git, Slf4j, JUnit, Mockito, Jacoco, Swagger
Cloud Computing: RDS, S3, ElasticSearch, Docker, Kubernetes, Google Cloud SQL
IDE: Eclipse, Intellij, VSCode
Operating System: Windows, Linux
Methodologies: Agile, Scrum
PROFESSIONAL EXPERIENCE
Confidential
Full Stack Developer
Responsibilities:
- Involved SDLC model with SCRUM Model and separated each module development with a single sprint
- Developed React with Routing to create a single-page web application
- Integrated Redux and Persistent storage for React component communication
- Designed Functional Components and Hooks (useState, useEffect) to initialize and update the input
- Triggered backend service with Axios call
- Used Spring Cloud Gateway to route APIs
- Integrated Microservice architecture with RESTful API for backend service
- Set up management between composite service and core service with Eureka for services registration and discovery and Feign client for services communication.
- Stored the service config file into GitHub and used Spring Cloud to configure the microservices in bulk
- Implemented POJO class to receive frontend data and map to the related table in the database
- Developed Data Repository to create database queries
- Used MongoDB as a NoSQL database to store the data
- Implemented fast read with Redis as an in-memory database
- Developed Custom Comparator to sort data by timestamp with Lambda Expression
- Involved Asynchronous data pipelines for periodic events with Scheduler
- Created Custom Exception on DAO layer and Service layer
- Designed and implemented test plan with JUnit for functions and Mockito for controllers
- Served log visualization with Kibana
- Utilized Docker, Jenkins, and Kubernetes to maintain the code with CI/CD pipelines
- Managed version control with Git and push code to GitHub
Technical Environment: Microservice, React, Redux, Spring MVC, Spring Cloud, Data Repository, MongoDB, Eureka, Feign, Scheduler, JUnit, Mockito
Confidential
Full Stack Developer
Responsibilities:
- Utilized Angular to create web component at the frontend
- Developed two-way binding with ngModule to record and update the input
- Implemented @Input, @Output decorators to set up communication between parent component and child component
- Applied custom Validation to make sure the user input is valid
- Used HttpClient to send the data from the frontend to the backend
- Built the backend with Spring MVC for the MVC architecture
- Involved Dependency Injection with IoC Container
- Created MVC structure building blocks, like Repository, Controller, Service, DAO, Domain, etc.
- Wrote @CrossOrigin annotation to enable cross-origin resource sharing
- Integrated MongoDB as a database to store the subscription information
- Configured NoSQL database query with Hibernate OGM
- Added Geolocation to get the latest jobs information around
- Set Scheduler to send emails to all subscriptions every day
- Utilized Jira to track issues
- Bundled dependencies package with Maven and built the project
- Used Git as version control and GitHub as the code repository
Technical Environment: Angular, HttpClient, Spring MVC, MongoDB, Scheduler, Hibernate, Maven, Git, Intellij, VSCode
Confidential
Full Stack Developer
Responsibilities:
- Followed Agile software development methodology for the project development
- Used Angular framework with routing to create a dynamic frontend page
- Built multi-step form with reusable Angular component and central services ( Dependency Injection ) for data transfer
- Involved HttpClient to make HTTP requests (GET, POST, PUT, DELETE) from frontend to backend
- Designed and injected service into different components and used Observable for component communication
- Integrated Spring Boot and Spring MVC for backend service development
- Implemented Single Sign-on with JWT token
- Stored JWT at LocalStorage to improve user experience
- Involved Spring Security for authorization with AntMatcher
- Disabled Cross-Site Request Forgery (CSRF) with Spring Security
- Wrote Resolver to delay page rendering before data complete fetching
- Utilized @PathVariable to receive data from URI template
- Add @RestController annotation makes the method inside the class as Servlet and returns @ResponseBody
- Applied authentication with JWT Bearer token at HTTP Request Header
- Deployed MySQL database on AWS RDS
- Configured AWS S3 for document storage
- Implemented MultipartFile to receive files from frontend to backend
- Used ORM (Hibernate) to fetch and persist data
- Performed dynamic fetching with HQL and lazy fetch type
- Involved Maven to manage the packages and build the project
- Integrated AspectJ for Spring AOP and used Advice for controller performance checking and logging
- Created the project with IntelliJ IDEA
- Used Git for version control and Jira for ticket tracking
Technical Environment: Angular, Maven, Spring Core, Spring Security, Spring MVC, Hibernate, RDS, S3, JWT, Intellij, VSCode, AspectJ
Confidential
Full Stack Developer
Responsibilities:
- Designed webpage workflow with Adobe XD
- Implemented an interactive web page with HTML/CSS and JavaScript
- Beautified the webpage with Bootstrap
- Integrated Tomcat as the web application container
- Worked with jQuery for interactive web page
- Created and registered Servlet to receive and handle HttpRequest
- Involved MVC structure to implement the backend. Controller for HTTP request and response, service for business logic, and DAO for data access.
- Designed POJO class to receive data from the frontend
- Set Attribute to save the data in Servlet and dispatch to JSP page
- Imported JSTL to dynamically display the data sent from the backend
- Implemented data access logic with Hibernate and JDBC
- Clustered MySQL database on AWS RDS
- Wrote Stored Procedures to improve database query
- Added HikariCP as connection pool to decrease the overhead of creating the database connection
- Involved EHCache as hibernate second-level cache to improve the performance of database query
- Developed the application on Eclipse
- Managed packages and installed packages with Maven and clean and build the project during the development
- Debugged JavaScript program with Chrome Developer Tools
- Tested the backend servlets with Postman
- Used Git for version control
Technical Environment: J2EE, Maven, Servlet, HTML, CSS, JSP, JSTL, Hibernate, HikariCP, EHCache, Eclipse, Postman, Git