0% found this document useful (0 votes)
27 views4 pages

Java Developer with 8 Years Experience

sample Resume of Java Developer USA format 8 years of experience

Uploaded by

3bf4m9mfhn
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views4 pages

Java Developer with 8 Years Experience

sample Resume of Java Developer USA format 8 years of experience

Uploaded by

3bf4m9mfhn
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Full name: Subash Shrestha

Email address: subashsubbu62@[Link]


Phone no: 4698928522
Open for C2C positions only

Professional Summary:

 Around 8 years of professional experience in application analysis, design, development, integration, deployment and maintenance / support for
web, standalone and client/server-based software applications in financial services, insurance, HealthCare and telecommunications industry
domains.
 Excellent background in developing applications using Java/ J2EE Technologies on Web Logic Application Server and Web Sphere Application
Server (WAS) with technologies such as Spring, Hibernate, Web Services, Maven, various databases such as Oracle, MS SQL Server and design
tools such as Design Patterns and UML modelling.
 Experience in web development using Spring 4.2/3.0/2.5, Hibernate 4.0/3.0, Maven, and Web Services.
 Extensive experience in developing Restful web service.
 Strong experience working with relational databases such as Oracle, MS SQL Server 2008
 Strong work experience on the front-end UI development using HTML, DHTML, CSS, JavaScript and jQuery along with Java Servlet and JSP.
 Expert in software development process that included Agile Methodologies/ Scrum
 Strong database concepts with experience in data modelling, creating databases, tables, views, stored procedures, and triggers using SQL with
experience in writing complex SQLs and calling them in the applications.
 Extensive experience in Unit testing (Cucumber/ Mockito), Integration testing, System testing, and production support of large-scale, enterprise
applications, and products.
 Adept in support documentation, debugging, fixing defects, operation, sustenance, and maintenance of end-to-end systems.
 Excellent problem-solving skills with a strong technical background and good interpersonal skills.
 Effective working relationships using independent judgment and initiative, and ability to work in a team environment to produce quality
information delivery systems.
 Good client interaction skills with experience in requirements gathering, Proof of Concepts (POC), and feasibility study.
 Proficient in Java EE, leveraging its extensive ecosystem to deliver high quality solutions.
 Extensive experience in building Web Service (SOAP/RESTful) and microservices using Spring or Spring Boot ensuring seamless communication
and integration
 Well versed in messaging frameworks such as MQ, Kafka and RabbitMQ, facilitating efficient communication in distributed systems.

Education:
Bachelor’s in Computer Science
St. Cloud university, Minnesota (Graduated December 2015)

TECHNICAL SKILLS:

Languages
Java, C, C++, Python, HTML, C
Framework and Tools
Spring, Spring boot, Hibernate, AJAX
IDEs/Development tools
Eclipse 3.0, IntelliJ IDEA, Postman, JIRA, GitHub, Visual studio.
Version Control Tools
Git, VSS, SVN
Database
Oracle 10g/11g, MS SQL Server, MySQL
Testing Tools
SoapUI, Cucumber, Mockito /Power Mock framework, Junit
Operating Systems
Windows, Linux, MacOS Sierra.
Build Tools
Maven, Ant
PROFESSIONAL EXPERIENCE:

Client: T-Mobile, Frisco, TX.


Dates: February 2022 – Present
Role: Backend Java Developer.

Responsibilities:

 Involved in SDLC cycle like Analysis, Designing, developing, Testing, and deploying the Enterprise applications using Java/J2EE platform and
Object-Oriented Design Patterns based on business requirements.
 Used Microservices architecture, with Spring Boot based services interacting through a combination of REST and Spring Boot.
 Extensive use of Java 8 on application development.
 Extensively used core java collections, API and data structures.
 Experience working with GraphQL schema, queries and mutations for interactions of microservices.
 Followed Agile Software Development with Scrum methodology with two weeks sprint cycle.
 Developed database persistence layer components for mapping an object-oriented domain model to the relational database using ORM framework
such as Hibernate and Spring JPA.
 Used Oracle and Cassandra as a database and performed curd operations by writing SQL queries, stored procedures, functions and triggers.
 Used Splunk for checking logs in different environments.
 Used Kafka alike messaging services for interaction within microservices.
 Responsible for deployments of the application in pre-production environments.
 Performed Unit, Integration testing worked on clearing issues at the time production and application support, worked on the maintenance and
deployments of the project with patches and performed documentation of project.
 Used postman and SoapUI to test the rest api endpoints.
 Coordinated with the onsite team for requirement transition and providing the necessary inputs required for the successful execution of the project.
 Used JIRA to keep track of bugs to reduce downtime, increase productivity, and Communication.
 Used GitLab as version control tool and have extensive knowledge on git command to perform various git operations.
 Used Kubernetes to check pods with restarting and maintaining pods up and running.
 Adopted Agile Methodology. Participated in daily scrum calls, Sprint planning, Sprint Retrospective, and end to end demo with product owners.
Environment: Java 8, J2EE, Spring Boot, Hibernate, REST Web service, Oracle, Cassandra, Postman, Maven, Soap UI, Splunk, Kafka,
GraphQL, Kubernetes, Jira, Gitlab CI/CD.

Client: New York Life Insurance Co Leawood, KS.


Dates: February 2020 – January 2022.
Role: Backend Java Developer.

Responsibilities:

 Involved in SDLC cycle like Analysis, Designing, developing, Testing, and deploying the Enterprise applications using Java/J2EE platform and
Object-Oriented Design Patterns based on business requirements.
 Involved in developing the application using Java/J2EE platform. Implemented the Model View Control.
 Used Microservices architecture, with Spring Boot based services interacting through a combination of REST and Spring Boot.
 Developed web application using Spring Framework with MVC design pattern.
 Followed Agile Software Development with Scrum methodology with two weeks sprint cycle.
 Implemented DAO for data access using Spring ORM, Spring Boot and Hibernate.
 Developed database persistence layer components for mapping an object-oriented domain model to the relational database using ORM framework
such as Hibernate and Spring JPA.
 Used MySQL as a database and performed curd operations by writing SQL queries, stored procedures, functions and triggers.
 Involved in designing User Interface (UI) applications and professional web applications using HTML, CSS, Bootstrap, JavaScript, Angular,
jQuery, DOM, XHTML, JSON and AJAX.
 Responsible for deployments of the application in pre-production environments.
 Performed Unit, Integration testing worked on clearing issues at the time production and application support, worked on the maintenance and
deployments of the project with patches and performed documentation of project.
 Used Junit along with Mockito framework to write test cases and used SonarQube to check the code coverage.
 Used postman to test the rest api endpoints.
 Coordinated with the onsite team for requirement transition and providing the necessary inputs required for the successful execution of the project.
 Used JIRA to keep track of bugs to reduce downtime, increase productivity, and Communication.
 Used GitLab as version control tool and have extensive knowledge on git command to perform various git operations.
 Adopted Agile Methodology. Participated in daily scrum calls, Sprint planning, Sprint Retrospective, and end to end demo with product owners.
Environment: Java 8, J2EE, React, JavaScript, Typescript, Spring Boot, Hibernate, REST Web service, MySQL, Postman, Maven, Soap UI,
Node JS, Servlets, HTTP and XML/SOAP, AWS.

Client: Ford, Dearborn, MI.


Date: September 2018 - January 2020.
Role: Backend Java Developer.

Responsibilities:

 Understanding user change requirements and analyzing the source systems and Developed UI pages using JSP & Spring MVC framework.
 Involved in creating & consuming Restful web services to expose to other applications.
 Created User defined exception classes using Java.
 Built great user interfaces with Modern JavaScript Frameworks like React JS
 Used Rest API to expose the contract rates for clients and performed versioning of existing services.
 Strong experience in implementing Service oriented architecture and Web Services using SOAP, RESTFUL API's.
 Wrote spring configuration file to define beans, define data source and Hibernate properties.
 Used Maven build script for building and deploying the application and designing new database tables for the enhancements.
 Validations are done using Spring MVC validation framework and JavaScript.
 Designed, developed, and implemented unit tests and product features.
 Formulated and executed agile processes for performance.
 Programmed reusable code and prepared technical designs.
 Implemented processes for resolution of computer equipment problems.
 Developed and executed software systems utilizing JavaScript and Groovy.
 Extensively used Hibernate in data access layer to access and updates in the database.
 Designed and developed web site application using AJAX, AngularJS, Bootstrap, Node JS, Java Swing, CSS, HTML5, jQuery, JSP, Tiles
framework and XML.
 Worked with the deployment team to generate deployment profiles and Jenkins.
 Developed all client-side logical implementation part of applications with AngularJS.
 Worked on AngularJS framework to augment browser-based applications with MVC Capability, built dynamically generated dropdown lists
using Ajax, JQuery and AngularJS.
 Writing Java classes, reusable components, and Java Beans for getting data from oracle tables.
 Performing the Unit testing and basic functional testing with different set of data.
 Used Mockito Framework to test the behavior of the system.
 Supporting System Integrating Testing and User Acceptance Testing.

Environment: Java, Hibernate, spring, AWS, HTML, CSS, Angular, Bootstrap, JQuery, Node JS, XML, XSLT, SQL Server, Maven, Apache
Tomcat, Jenkins.

Client: Pfizer, Manhattan, NY .


Dates: May 2017 – August 2018
Role: Java Developer.

Responsibilities:
 Actively participated in different phases of the Software development Life Cycle (SDLC) and analyzed Use case diagrams and Class diagrams
based on requirement.
 Designed various server-side components using Java 8, J2EE, Spring, Web Services and REST.
 Presentation Layer is created using HTML, JSP, Apache Jena and Struts Tag Libraries.
 Validated user data using Struts Action Forms and user request is processed using Action Classes.
 Worked on the customization of UPS framework using Struts 1.0, JSP, AngularJS, JavaScript, Html, DHTML, CSS framework, NodeJS
and BackboneJS.
 Designed and developed intranet web applications using JavaScript and CSS.
 Created Action classes including dynamic action and dispatch actions to execute the relevant helper classes to execute the business logic.
 Developed DAO’s (Data Access Objects) and performed O/R mapping using Hibernate to access the database.
 Worked on the struts tiles to dynamic generate the JSP page and to create reusable JSP’s to maintain uniform view across all the web pages.
 Used Spring AOP, Dependency Injection and Inversion of control (IOC) in developing discount generation Services.
 Configured and accessed Hibernate with Spring IOC.
 Used Web Services using SOAP to interact with other existing applications.
 Involved in designing and implementing persistence layer using JPA with Hibernate following the Generic Data Access pattern.
 Built and accessed the database using Hibernate with Oracle.
 Automation of script to build and deploy using Jenkins.
 Integrated GIT into Jenkins to automate the code checkout process.
 Documented Unit test cases and Junit test classes to test the execution of Java classes and used SonarQube to check code coverage.
 Coordinated with Developers and QA Testing Team regarding testing issues like setting up builds, issuing tickets, setting Testing and
Development Environment.
 Prepare Functional Requirement Specification and done coding, bug fixing and support.
 Interacted with SMEs to capture the Business needs for referrals process.
 Performed Gap analysis between business requirement on Proposed and existing systems.
 Participated in designing and development of software using agile development practices.

Environment: Java/J2EE, core java, spring, Hibernate, Tomcat, Struts, JPA, SOAP, AOP, IOC, Agile, CVS, AngularJS,
backbones, NodeJS, MySQL, JavaScript, Oracle 9i, JUnit, JSP, XML, HTML, CSS, UML, DHTML.

Client: Target, Minneapolis, MN


Date: January 2016 – April 2017.
Role: Backend Java Developer.

Responsibilities:

 Reengineered the existing legacy application into a web-based application using the latest web technologies.
 Developed J2EE web application using the Java J2EE technologies like Spring boot, Spring MVC, spring JPA, hibernate.
 Used Spring JDBC and Spring Data modules in Spring MVC framework for implementing Model-View- Controller (MVC) architecture at the
Web tier level to isolate each layer of the application so that complexity of integration will be reduced, and maintenance will be very easy.
 Developed DB2 stored procedures on DB2 Database. Developed Hibernate services, Data Objects and Data Access Objects to access DB2.
 Build REST web service using Spring boot with hibernate and spring JPA.
 Designing and developing restful API and services using best practices to interact within the microservices and with the front end. Using spring
MVC and spring rest. Security is provided via tokens(jwt) and spring security.
 Used JPA to fetch data from database to avoid any dependency on database tables.
 Integrate the dynamic pages with Angular JS and jQuery to make the page dynamic. Used [Link] for passing on data from HTML forms.
 Used JMS MQ (Message Queues) for reliable and asynchronous exchange of important information between multiple business applications.
 Developed JUnit test cases to unit test the business logic. Supporting System Test and User Acceptance Test.
 Used Apache Maven build tool to automate the build process and Jenkins CI for continuous integration.
 Followed Agile Software Development Methodology and Test-Driven Development (TDD) to build the application iteratively and incrementally.
Participated in scrum related activities and Daily Scrum Meetings.
 Performed Design review and Code review for well-known performance practices for better performance and code maintainability.

Environment: Java 1.7, Spring, Jenkins, Maven, SVN, JMS, DB2, Mongo DB, HTML4/5, CSS2/3, JavaScript, jQuery, JSON, RESTFUL,
JPA, MEAN Stack.

Common questions

Powered by AI

Java technologies and tools are extensively utilized to build high-quality solutions across various industry domains, including healthcare and financial services, due to their robust, secure, and scalable nature. For example, Java's ecosystem, particularly Java EE, supports enterprise-level applications with its comprehensive APIs and frameworks like Spring and Hibernate, which streamline backend development and offer features such as transaction management and security . In financial services, Java allows for seamless integration of systems through its support for building web services (both SOAP and RESTful), enabling secure and reliable inter-system communication . In healthcare, Java applications leverage its portability and platform independence to ensure compatibility across different IT environments, which is critical for managing electronic health records (EHRs) and other sensitive data across diverse systems . Additionally, tools like JIRA and Git aid in managing version control and tracking issues, which are essential for maintaining high software quality in these industries . Collectively, Java's stability, API diversity, security features, and development tools make it an ideal choice for creating enterprise-grade solutions that meet industry-specific requirements.

When integrating a Microservices architecture using Spring Boot, several considerations should be taken into account to ensure efficient communication between services: 1) RESTful APIs can be used to facilitate communication between microservices, allowing for scalable and stateless interactions . 2) Messaging frameworks like Kafka and RabbitMQ are essential for handling asynchronous communication, which helps in decoupling services and managing data flow efficiently across distributed systems . 3) Tools like Spring Cloud offer components for service discovery and registration, which are critical in dynamically locating microservices within the distributed system . 4) Using GraphQL for queries and mutations in microservices interactions enables efficient data retrieval tailored to client needs, which can reduce network overhead . 5) Ensuring security through token-based authentication (e.g., JWTs) and implementing Spring Security to protect services from unauthorized access . These considerations help in creating a resilient, scalable, and maintainable microservices architecture.

Spring Boot facilitates the development and deployment of RESTful web services by providing a flexible, opinionated framework that simplifies configuration and application setup, making it ideal for microservices architectures. Firstly, Spring Boot's auto-configuration feature automatically sets up necessary configurations based on project dependencies, reducing the boilerplate effort usually required in traditional application setups . It also includes embedded servers like Tomcat, which expedite the deployment process as apps can run independently without a full application server stack. Such traits are crucial for microservices, which demand lightweight and rapid deployability. Additionally, Spring Boot integrates seamlessly with the Spring ecosystem, enabling developers to leverage Spring Data for data access, Spring Security for authentication, and other microservices patterns like circuit breakers using Spring Cloud . Moreover, Spring Boot's convention over configuration approach ensures that developers can focus on building business logic rather than spending extensive time in setup and configurations, thereby streamlining the microservices development process . These features collectively contribute to an efficient RESTful web service development paradigm that is scalable and maintainable.

JavaBeans and Servlets play pivotal roles in Java web development by encapsulating data and managing requests and responses between clients and servers. JavaBeans are reusable software components that follow specific conventions to encapsulate many objects into a single object (the bean). They help in managing application data and business logic, providing a storage mechanism for servlet interactions . Servlets, on the other hand, are server-side programs that handle client requests by generating dynamic web content, acting as a control layer in web applications. They are often integrated within frameworks like Spring MVC, which provides a Model-View-Controller architecture that simplifies the development of web applications . In Spring MVC, Servlets act as the central DispatcherServlet that coordinates the flow of application requests, delegating them to appropriate JavaBeans or service handlers for processing. This integration enhances application organization, simplifies maintenance, and decouples business logic from presentation, making Java web applications more flexible and scalable.

Adoption of Agile methodologies benefits enterprise application development by promoting iterative and incremental development, which allows for flexibility and responsiveness to change. Specifically, in the context of Java/J2EE enterprise applications, Agile methodologies facilitate: 1) Continuous integration and delivery processes, where frequent check-ins and automated builds (using tools like Jenkins and Maven) ensure early detection of defects, improving software quality . 2) Enhanced collaboration and communication among team members and stakeholders through daily stand-ups, sprint planning, and retrospectives, leading to better alignment with business needs . 3) Faster delivery of features to the market by breaking down larger tasks into smaller, manageable units that can be developed and tested within short sprints, typically two weeks in duration . 4) Reducing risk by incorporating feedback loops and allowing for regular adjustment of project direction based on empirical data and outcomes from each sprint . This approach ultimately results in a more effective and efficient development process that aligns closely with business objectives.

Unit testing frameworks like JUnit and testing tools like Mockito are instrumental in enhancing the robustness and reliability of Java-based applications by providing a structured approach to test individual units of code in isolation. JUnit allows developers to write repeatable tests, which ensure that code behaves as expected and new changes do not introduce regressions . Its integration with continuous integration systems (e.g., Jenkins) allows for automated testing during each build, ensuring immediate feedback on code quality. Mockito complements JUnit by providing a way to mock objects in tests, which helps in simulating real object behavior that is otherwise difficult to achieve due to dependencies on external systems or states . This isolation of code for testing allows developers to focus on testing the logic of the component being developed, rather than the interactions with its dependencies, thus improving test coverage and reliability. Together, these tools facilitate a comprehensive testing strategy that supports test-driven development (TDD), leading to more stable and reliable code bases.

Maintaining version control best practices using tools like GitLab is significant in the lifecycle of enterprise application development as it ensures organized, efficient, and collaborative coding environments. Version control systems like GitLab facilitate tracking and documentation of code changes, enabling developers to manage multiple versions of code, revert to previous states if errors occur, and analyze the evolution of code bases over time . This is crucial for collaborative development, where multiple developers might simultaneously work on different project parts — it reduces merge conflicts and supports parallel feature development. Additionally, branching strategies in GitLab help manage features, bug fixes, and experimental code changes without affecting the main codebase, ensuring stability in production environments . Integrating GitLab with CI/CD pipelines further automates the software delivery process, enabling quick and consistent deployments, enhancing overall productivity and reducing time to market. By adhering to version control best practices, development teams can ensure higher code quality, traceability, and accountability in large-scale enterprise applications.

Hibernate plays a crucial role in Java application development by providing an Object-Relational Mapping (ORM) framework that simplifies database interactions and enhances scalability in large-scale projects. It abstracts the complexities of direct database operations by allowing developers to interact with the database using Java objects instead of writing complex SQL queries. This leads to several benefits: 1) Hibernate provides a transparent persistence mechanism that reduces boilerplate coding and makes the application logic cleaner and easier to maintain . 2) It supports lazy loading and caching, which enhance performance by fetching only necessary data and reducing database access frequency . 3) Hibernate's query language (HQL) allows for more flexible and dynamic query creation compared to native SQL . 4) It ensures database portability with its database-neutral mappings, facilitating easier switching between different databases . By using Hibernate, large-scale projects can efficiently manage complex data relationships, enhance performance, and improve maintainability.

Implementing GraphQL within a microservices architecture presents several challenges, but these can be effectively addressed with proper strategies. Firstly, one of the main challenges is preserving performance and efficiency as GraphQL queries can potentially request large amounts of data, resulting in over-fetching or under-fetching issues. This can be mitigated by implementing query cost analysis and employing techniques such as persisted queries and caching mechanisms . Secondly, handling authentication and authorization can become complex as GraphQL necessitates fine-grained access controls at the field level. Leveraging plugins or middleware that integrate with existing authentication systems can simplify this aspect. Thirdly, ensuring schema consistency and versioning across multiple services can be challenging in a distributed environment. Utilizing schema stitching or federated schemas can help manage and merge schemas from various microservices to maintain a unified API . Additionally, adopting robust logging and monitoring systems can facilitate effective debugging and maintenance of GraphQL services, ensuring better traceability and service reliability. Addressing these challenges requires adopting best practices and tools tailored for GraphQL's unique demands within a microservices framework.

Tools like Docker and Kubernetes significantly aid in managing and deploying microservices, especially in complex enterprise environments by offering streamlined container orchestration and management capabilities. Docker provides a standardized unit for software packaging — allowing applications and dependencies to be bundled as lightweight containers that can run uniformly across any environment, ensuring consistency from development to production . This minimizes configuration errors and enhances portability. Kubernetes complements Docker by orchestrating container deployment, scaling, and management through features such as automated load balancing, self-healing, and horizontal scalability, which are essential for maintaining service resiliency and availability in dynamic production environments . It manages large clusters of hosts running containers and orchestrates computing, networking, and storage infrastructure for user workloads. These functionalities reduce the risk of downtime and allow enterprises to manage a multitude of microservices efficiently by handling service discovery and load balancing, automated rollouts and rollbacks, and secret management, thereby facilitating a robust and scalable architecture suited for enterprise needs.

You might also like