Summary
Overview
Work History
Education
Skills
Timeline
Generic

Suraj Sherchan

San Francisco,CA

Summary

Over 6 years of experience as a Software Developer involved in Object-oriented analysis, Design, Development, Testing, Implementation, and maintenance of web applications. Experienced in Core Java concepts like Multithreading, OOPS, File Handling, Concurrency, I/O, Generics, Data Structures, Collections, and Garbage collection, Java 8 features like Parallel Streams, Lambdas, Method References, Functional Interfaces, and Filters. Proficient in Design Patterns like Singleton, Command, Factory, Abstract Factory, Session Facade, MVC, Observable. Experience in application development for Cloud platforms using Java, Spring Boot, Spring Cloud, Microservices. Expertise in spring modules such as Spring IOC, AOP, Core, Messaging, ORM, and MVC architecture, Spring Boot, Security. Experience developing complex PL/SQL queries, Procedures, Triggers, Stored Procedures, Packages, and Views in various relational databases like Oracle, DB2, PostgreSQL, MySQL, and MSSQL Server. Experienced working with NoSQL databases like MongoDB and Cassandra. Experience in front end technologies like Angular, Typescript, React, HTML, CSS, Bootstrap, JavaScript, jQuery, Angular 8, Typescript. Hands-on experience in creating Angular modules, controllers, directives, and filters. Experience working in Continuous Integration Continuous Deployment (CICD) pipeline using Jenkins and Bamboo. Also, involved in configuring the pipeline for project builds. Developed Docker images and containers for the application and orchestrated those containers for deployments using Kubernetes. Experience working with streaming and messaging platforms like Apache Kafka, JMS, RabbitMQ, and ActiveMQ. Experience in Amazon Web Services (AWS) like EC2, S3, RDS, Elastic Load Balancing, SQS, AWS Identity, access management, Cloud Watch, EBS, and CloudFront. Used Maven and Gradle as build tools to automate building, testing, publishing and deployment, and dependency management. Developed unit test using Junit and Mockito frameworks and automated testing using Selenium and TestNG frameworks. Implemented logging using Log4j and integrated with Splunk logging tool and Honeycomb, Zipkin for distributed tracing.

Overview

6
6
years of professional experience

Work History

Java Full Stack Developer

Expedia
San Francisco, CA
11.2022 - Current
  • Gathered requirements from the Product Owner team, groomed the user stories for the requirements, and planned the stories for each sprint for project delivery.
  • Worked in an Agile model and participated in several Agile ceremonies for status updates, tracking, sprint planning, grooming, and implementation of the project.
  • Leveraged the Spring Boot framework to rapidly develop and deploy microservices, utilizing its opinionated approach and auto-configuration capabilities to streamline development and reduce boilerplate code.
  • Designed and implemented RESTful APIs using Spring Boot, adhering to RESTful principles and best practices to ensure interoperability, scalability, and maintainability of services
  • Utilized Spring Boot Actuator to monitor and manage application health, metrics, and endpoints, providing real-time insights into system performance and availability
  • Designed and developed dynamic user interfaces using HTML, Angular, and TypeScript for seamless integration with backend services
  • Evaluated and recommended new CI/CD tools, technologies, and methodologies to enhance automation capabilities, scalability, and resilience of the software delivery pipeline.
  • Implement the changes to applications brought by the DevOps team to improve application performance and reliability through load testing and code optimization.
  • Designed and developed dynamic user interfaces using HTML, ensuring seamless integration with frontend technologies like Angular to create intuitive and responsive experiences for users
  • Implemented Angular components, directives, and services to enhance the functionality and interactivity of the user interfaces
  • Utilized TypeScript for developing scalable and maintainable frontend code, ensuring type safety and better developer productivity
  • Integrated JavaScript libraries and frameworks such as jQuery to streamline development processes and enhance user experience
  • Managed infrastructure on AWS, including EC2, S3, RDS and CloudWatch, ensuring high availability, scalability
  • Automated deployment processes by setting up CI/CD pipelines using AWS Code Pipeline and AWS Code Deploy, streamlining the release cycle and improving overall efficiency
  • Implemented serverless computing solutions with AWS Lambda, allowing for the execution of code without the need to provision or manage servers, thereby reducing operational overhead and costs
  • Ensured data integrity and durability by utilizing AWS S3 for scalable object storage and AWS DynamoDB for NoSQL database requirements, adhering to best practices for data security, backup, and disaster recovery
  • Involved in creating and extracting data from the database using simple and complex SQL Queries, PL/SQL Stored procedures, triggers, and packages on Oracle database
  • Collaborated with cross-functional teams to define service boundaries, API contracts, and data models for individual microservices, ensuring loose coupling and high cohesion between services
  • Employed containerization technologies such as Docker and orchestration platforms like Kubernetes to deploy and manage microservices at scale, ensuring portability, scalability, and resilience
  • Used Jira for bug tracking, issue tracking, and project management
  • Involved in writing Python scripts for automated deployment of the application
  • Responsible for developing data pipelines by implementing Kafka producers and consumers and configuring brokers
  • Environment: Java, Spring Boot, REST, Angular, HTML5, CSS3, JavaScript, JSON, XML, IOC, AOP, Spring MVC, Hibernate, SQL, Oracle, Maven, Bamboo, JUnit, PowerMock, Bitbucket, JIRA, AWS, S3, SNS, EC2, SQS, Kafka, Honeycomb, Splunk, Microservices
  • Implemented automated testing tools such as Selenium WebDriver to ensure quality assurance standards are met.

Java Full Stack Developer

Vanguard
Malvern, PA
10.2020 - 10.2022
  • Participated in project planning with product owner and team to analyze business IT needs and translate them into working model
  • Responsible for designing the User Interface by coding in HTML5, CSS3, Angular, Bootstrap, Typescripts, JavaScript, and jQuery to build this Single Page Application (SPA)
  • Used Angular component router for navigation, and worked with Angular directives, components, pipes, and injectables
  • Used Spring Boot to build cloud-based microservices and developed Spring-based applications with very less configuration
  • Utilized Spring boot to provide all the CRUD capabilities and migrate existing applications into REST-based microservices
  • Configured Spring OAuth with Spring Security to perform authentication and authorization for microservices
  • Developed ORM mappings using Spring JPA/Hibernate and created various JPA repositories and took part in setting up transaction management in the application
  • Extensively worked in collections and table type objects with multiple level nested tables
  • Wrote stored procedures, cursors, functions, triggers, and views using PL/SQL
  • Generated indexes for query optimization and performance enhancements
  • Worked with MongoDB to create tables to load large sets of semi structured data coming from various sources
  • Maintained the source codes using version control tools like GitHub and worked with the DevOps team for seamless deployment of database objects to various environments
  • Involved in developing test procedures for unit testing and testing of the module using Junit and Mockito
  • Deployed applications into Continuous Integration and Continuous Deployment (CICD) environments using tools like Jenkins to integrate and deploy code on CI environments for continuous development, testing, and deployments
  • Involved in writing Maven scripts for automated deployment of the application
  • Worked with Kubernetes to orchestrate the scaling, management, and deployment of the docker container
  • Deployed the application on Amazon Web services (AWS) and used it to provide a large computing capacity for scalable solutions
  • Responsible for developing data pipelines by implementing Kafka producers and consumers and configuring brokers
  • Provided the technical assistance to resolve issues identified in production and demonstrate appropriate solutions to the end users
  • Responsible for designing and developing the dynamic user interfaces using Angular, JavaScript, HTML, CSS, Bootstrap, Typescript, jQuery to build the SPA - Single Page Application
  • Implemented robust Continuous Integration and Continuous Deployment (CI/CD) pipelines using tools like Jenkins, GitLab CI/CD, or CircleCI to automate software delivery processes
  • Implemented blue-green deployments and canary releases to minimize downtime and mitigate risks during software updates, ensuring seamless user experience and high availability
  • Integrated automated code quality checks, static code analysis, and security scanning tools into the CI/CD pipeline to enforce coding standards, identify potential vulnerabilities, and maintain code integrity
  • Environment: Agile, Java 11, PostgreSQL, Log4j, Angular, HTML, CSS, TypeScript, Bootstrap, REST, Spring, XML, Hibernate, JUnit, Kafka, JIRA, PL/SQL, Linux, Windows, Jenkins, Docker, Kubernetes, GIT, Mockito, Swagger

Java Developer

USAA
Plano, TX
01.2019 - 10.2021
  • Involved in Brainstorming sessions, Daily Scrum meetings, Sprint Planning, and estimation of the tasks for the user stories in an Agile Environment
  • Developed Middle Tier Using Spring MVC
  • Wrote backend code using Spring framework
  • Designed and implemented Session Facade, MVC, Front Controller, and DAO design patterns
  • Involved in Core Java coding by using Java features such as Collections, Multithreading, Exception Handling, Generics, Enumeration, and Java I/O to implement business logic
  • Implemented various design patterns like Service Locator, Session Façade, Data Access Objects (DAO), Factory, Singleton, Data Transfer Object (DTO), and Adapter
  • Implemented the application using Spring IOC, Spring MVC Framework, Spring Batch, Spring Boot and handled the security using Spring Security to execute similar jobs simultaneously
  • Implemented logging and transaction manager using the Spring AOP concept
  • Performed data operations using Spring ORM with Hibernate by taking annotations and auto wiring
  • Implemented the Hibernate Template and criteria API for querying the database
  • Used a Microservices architecture, with Spring Boot based services interacting through a combination of REST and Spring Boot
  • Developed RESTful web services to enable clients to connect to the site’s backend and interact securely and reliably through HTTP
  • Used JSON for data exchange between application modules along with XML
  • Involved in writing simple and complex SQL queries to interact with the PostgreSQL database
  • Used Jenkins pipelines to drive all microservices builds out to the Docker registry and then deployed to Kubernetes
  • Created Pods and managed using Kubernetes
  • Utilized Junit and Mockito framework to write unit test cases and perform unit testing of the application
  • Used Log4j logging framework for logging messages
  • Collaborated with cross-functional teams, including developers, testers, and operations engineers, to continuously improve CI/CD processes, optimize build performance, and enhance deployment reliability
  • Automated and scheduled backups on all UNIX Machines using shell scripts
  • Deployed and Troubleshoot JAR, WAR, and EAR applications in a clustered environment with Web Logic
  • Developed REST web services to convert the existing applications into separate entities and be accessed by RESTFUL calls
  • Parsed the XML based responses using JAXB Parser and validated XML against the schema
  • Wrote complex SQL queries to fetch statistics for the business users from in Oracle database
  • Used GIT version control to track and maintain different versions of the application
  • Implemented Test Driven Development using frameworks like Junit and Mockito
  • Involved in the technical code reviews, prepared unit test cases, detailed time estimation, traceability matrix, and impact analysis and code review documents
  • Used Jira for tracking user stories and issues, Git as a version control tool, IntelliJ as IDE, Maven as a build tool
  • Environment: Java, J2EE, Log4j, JSON, XML, Spring, Hibernate, Unix, REST, SOA, GIT, TDD, Agile, Eclipse, Junit, Mockito, HTML, CSS, Oracle, PL/SQL

Education

Bachelors of Science - Computer Science

California State University, East Bay
Hayward, California

Skills

  • Java 8/11
  • PL/SQL
  • Python
  • JavaScript
  • TypeScript
  • Linux
  • Unix
  • Oracle
  • MySQL
  • PostgreSQL
  • DB2
  • MSSQL Server
  • MongoDB
  • Cassandra
  • GIT
  • GITHUB
  • BITBUCKET
  • HTML
  • XML
  • CSS
  • Bootstrap
  • Angular 8/10
  • React
  • Redux
  • Jira
  • Jenkins
  • JUnit
  • PowerMock
  • Mockito
  • TestNG
  • Selenium
  • Confluence
  • Log4j, SLF4j
  • Honeycomb
  • MQ
  • Logback
  • Maven
  • Gradle
  • Dynatrace
  • Grafana
  • Tomcat
  • WebLogic
  • IBM WebSphere
  • JBoss

Timeline

Java Full Stack Developer

Expedia
11.2022 - Current

Java Full Stack Developer

Vanguard
10.2020 - 10.2022

Java Developer

USAA
01.2019 - 10.2021

Bachelors of Science - Computer Science

California State University, East Bay
Suraj Sherchan