Senior Software Engineer, Resume
Trenton, NJ
SUMMARY
- Full - stack developer with 6+ year of professional experience, mainly in E-Commerce and Employee Management System.
- Hands-on experience in developing and implementing micro-services using SpringBoot, Spring Cloud.
- Experienced in developing cloud solutions using Spring Cloud (Config-Server, Eureka, Hystrix, API Gateway, Zipkins/Sleuth).
- 6+ years of Java/J2EE experience. Skilled in Core Java concepts, including Object Oriented Programming (OOP), generic annotation, collection framework, I/O, exception handling, garbage collection, Multi-Threading.
- Deep knowledge of developing solution using distributed message echo-hub platform using Kafka and Kafka Streams.
- 6+ years in back-end service design and development using Spring Spring MVC, Spring IOC, Spring AOP, Spring Security.
- Proficient in back-end service design and development using Spring MVC, Rest Service.
- Working Experience with ORM technology such as JDBC, Hibernate, JPA, Mybatis.
- Proficient in RDBMS such as Oracle and MySQL, working knowledge of writing SQL queries and data analysis.
- Experience in using Redis, H2-database in-memory data structure store.
- Experience in using project management and comprehension tools in software development such as Confidential .
- Familiar with JUnit Test, Integration Test, Regression Test, Functional Test and test automation using tools such as Junit and Spring Testing.
- Experience in using Apache Tomcat7.0 as Application Servers.
- Experience in using Chrome Developer Tool, Post m an as debug tools.
- Familiar with different operation systems, Mac OS/Linux/Windows.
- Experience using Git as version control tool to manage large-scale code base.
- Familiar with Network Communication Protocol, i.e. HTTP request(GET, PUT), TCP, UDP.
- 2+ years with front-end development using: Angular 6, 2+ years using HTML5, CSS3, JavaScript, JQuery, and AngularJS.
- Experience in using NPM as Package management tools.
- Experience in Agile, Slack methodology and Daily Scrum meeting.
TECHNICAL SKILLS
- Java, SQL, TypeScript, J2EE Technologies, JSP, Servlets, Web Services, JDBC, XML, Log4j
- Framework Tools Spring, Spring Boot, Hibernate, Mybatis, JPA, Confidential
- Web Technologies HTML, XML, CSS, AJAX, JSON, REST, Angular6
- Application Servers
- Apache Tomcat
- Database Oracle 11g/10g, MySQL, Redis, H2-database
- Testing/Control Tools JUnit, Git
- Java Frameworks/Libraries Spring MVC, Spring IOC, Spring AOP, Spring Security, Spring Boot, Spring Web, Spring Cloud
PROFESSIONAL EXPERIENCE
Senior Software EngineerConfidential, Trenton, NJ
Responsibilities:
- Developed multiple micro services based on Spring Boot.
- Used Oracle database to store applicant data and info.
- Used JPA(Java Persistence API) for storing, accessing, and managing Java objects in a relational database.
- Developed Spring Cloud Micro services include applicant service and applicant detail service.
- Developed Spring Cloud Zuul API Gateway to dispatch different URL to proper back-end micro services.
- Utilized Zuul Gateway Embeded Ribbon Load Balancer to distribute requests coming from client application equally between running instances of micro services.
- Used H2 Database to cache data for testing.
- Used Postman for performing integration testing with API.
- Built RESTful Web Services.·
- Developed Controller layer, Service layer, Data layer and VO layer for each micro service.
- Added Spring Security on each micro service, Zuul API Gateway and Eureka Server for authorization and disable the cross side’s requests.
- Developed Spring Cloud Config Server to support for externalized configuration in a distributed systems.
- Added bootstrap.properties on each micro service to connect with Config Server.
- Utilized Spring Cloud Bus to broadcast configuration changes to all subscribed micro services while running.
- Used Kafka as Message Broker to ensure micro services communicate with each other.
- Used Spring Actuator to monitor and manage applications.
- Created RestTemplate to ensure micro services communicate with each other.
- Used Spring Cloud Sleuth to create Trace ID and Span ID on each micro service communication.
- Used Zipkin Server to trace micro services communication.
- Used ELK Stack to realize aggregate config files, search config files and view config files.
- Utilized Spring Profiles to create different configurations for different environments (development / production).
- Configured Git repo for micro services and manage all configuration files with Config servers.
- Utilized Git for version control.
Environment: Java, Eureka, Zuul API Gateway, RESTful Web Services, Spring Boot, Spring Cloud, Spring Security, JPA, JDBC, Spring IOC, Dependency Injection, CORS Filter, Confidential, Log4j, JUnit, H2-database, Tomcat, kafka, Oracle.
Software Engineer,Confidential, Philadelphia, PA
Responsibilities:
- Developed the back-end application using Spring Boot Java-based framework.
- Used Oracle to store user information and related product information.
- Used Redis as cache to store user’s cart information.
- Developed Data Access Objects (DAO) layer to handle the details of the persistence mechanism.
- Developed Pojo layer to operate with database.
- Configured Mybatis XML mapping files to implement Object Relational Mapping(ORM) using Mybatis to build connections between POJO and Oracle database.
- Configured different beans using Spring IOC to inject common services and controllers.
- Developed Service layer to provide logic to operate on the data sent to and from the DAO and the client.
- Developed Controller layer to handle the navigation between the different views.
- Developed View Object (VO) package to return results to the front-end.
- Developed form package to receive multiple request information from front-end.
- Developed exception package to handle different false requests.
- Utilized Spring Security to provide authentication and authorization for users to sign in, sign up and log out.
- Used CORS(Cross Origin Resource Sharing) Filter to enable cross origin requests.
- Used Log4J to logging, debugging, and providing warnings and info on the server console.
- Used Gson to transform class to Json format or transform Json format to class.
- Created Interceptor to prehandle the request from front-end.
- Created JUnit test for Unit Testing on Java class.
- Used Observables to resolve data transfer between front-end and back-end.
- Using Angular CLI to build development environment.
- Worked with UX team to implement the UI design using HTML5, CSS3, Bootstrap and Angular 6. Used TypeScript to build Components, Directives, Services and Pipes based on Angular 6.
- Build Single Page Application using Angular6 component and router.
- Implemented rating system component to rate products using Eventemitter.
- Coded navigation bar using Angular Router to navigate and pass data between different components.
- Created Guard Service to prevent invalid routing address for security purpose.
- Used ngModel to achieve two-way binding and using ngIf to display custom validations message and error message.
- Utilized local storage to stored user information on client side to improve user experiences.
- Applied Angular HTTP Service to consume RESTFul web servers from backend.
- Applied Projection to build reusable components and make applications more scalable and flexible.
- Utilized Brower Developer for front-end testing.
Environment: Java, Spring Boot, Mybatis, JDBC, Spring IOC, Spring Security, SQL, CORS Filter, Confidential, Log4j, JUnit, NPM, HTML5, CSS3, Bootstrap, Angular6, TypeScript, ES6, Redis, Oracle.
Full-Stack Developer,Confidential, Louisville, KY
Responsibilities:
- Used Spring Boot to develop RESTful controller and Service layer to handle request.
- Used J2EE Design Patterns such as Singleton Pattern, Factory Pattern and so on.
- Develop Java, J2EE, Hibernate and Spring Framework on server side.
- Used Spring framework and Hibernate ORM to implement the middle tier with Spring IoC, AOP, Hibernate Dao Support and other features.
- Managed dependency with Confidential and developed backend services based on Spring MVC design pattern.
- Used Hibernate, object/relational-mapping (ORM) solution, technique of mapping data representation from MVC model to Oracle database.
- Used Ajax for asynchronous partial refreshing and request handling.
- Implemented Spring Servlet for delegating to POJO and called Controllers to dispatch incoming http requests.
- Implemented Spring DAO Support integrated with Hibernate framework to contact with database.
- Utilized Hibernate Cache to optimize database query and reduce connection with the database.
- Utilized Spring Security for authentication and validation of user signup, login and logout protecting employee privacy and critical payment information.
- Implemented different functions based on Core Java collection, multi-threading, reflection, I/O, Exception Handling, generics.
- Fixed JSON parser issues to improve communication efficiency between front end and back end.
- Used CORS(Cross Origin Resource Sharing) Filter to enable cross origin requests.
- Conducted unit test of the project using Junit and debugging with Log4j.
- Developed Postman to test transmission of REST API.
- Developed front-end using HTML, CSS, Bootstrap.
- Used Git as source code version control.
- Deployed the applications in AWS as EC2 instances and create snapshots for the data that stored in AWS S3.
- Involved in gathering the requirements, analyzing the employee specifications, developing and testing.
Environment: Oracle, HTML5, CSS3, Bootstrap, ES6, Java, Spring MVC, Hibernate, JDBC, Spring IOC, Spring Security, SQL, CORS Filter, Confidential, Log4j, JUnit, NPM.
Full Stack Developer,Confidential, Santa Clara, California
Responsibilities:
- Involved in Agile software development, attend daily Scrum meeting.
- Used Oracle to store HR information.
- Developed Servlets and JSPs based on MVC pattern using Spring Framework.
- Utilized Confidential to build project and configured pom.xml to inject dependency.
- Deployed Hibernate ORM(Object Relational Mapping) to map data in Oracle database.
- Configured different beans using Spring IOC to inject common services and configurations.
- Built controller class and coded SQL queries for mapping and responding to the requests from front-end.
- Used Spring Security to provide authentication and authorization for HR to sign in and sign up.
- Utilized CORS(Cross Origin Resource Sharing) Filter to enable cross origin requests.
- Created JUnit test for Unit Testing on Java class.
- Built internal website for employees using HTML, CSS, LESS, JavaScript, Bootstrap and JQuery.
- Implemented front-end component such as Navigation bar, Dropdown menu, Pagination, Modal, Form, and Table.
- Created Filter like type filter, singleton filter, alpha filter and word filter to filter row data based on different keywords.
- Utilized JSON as data format and resolved data transfer between back-end and front-end using Ajax promise.
Environment: Agile, Oracle, Scrum, HTML, CSS, LESS, JavaScript, Bootstrap, JSP, JQuery Ajax, JSON, Java, Spring MVC, Servlets, Confidential, Hibernate ORM, Spring IOC, SQL, Spring Security, CORS Filter, JUnit.
