Principal Software Engineer Resume
Sterling, VA
SUMMARY
- Have 12 years 7 months of extensive experience in web application development using J2EE, JAVA /Python related technologies.
- Experience in developing Enterprise and Web applications using Java/J2EE and other technologies Spring 4x/5x (IOC, AOP, Security, Spring Boot, Spring Data, Spring Batch, Spring Cloud), Hibernate, JPA 2.0. Experience on working on AWS Managed Services.
- Developing Distributed, loosely coupled Micro service using Spring Cloud and Spring Boot/Web Flux.
- Writing API using SWAGGER 2 for Rest Services.
- Expertise: Java J2ee, No - Sql, Algorithm Design, Test-Driven development, Data structures and RDBMS, Object Oriented design and analysis, Functional programming, Concurrent programming.
- Developing Event Driven Micro services that uses Event Souring and CQRS. (AXON and Eventuate).
- Consuming and Producing messages using AVRO and Kafka.
- Good hands-on experience on Performance and Scalability optimization and JVM tuning.
- Experience working on Python 3, Django and Flask framework.
- Developing AWS Automation Scripts using Python boto3.
- Hands on Experience on Angular JS 4x and Node.js 4x.
- Proficient and Hands on experience in applying various core J2EE design patterns like Singleton, Result Builder, Memento, Session Facade, Business Delegate, Service Locator, Dependency Injection, Front Controller, Value Objects, Data Transfer Object, DAO etc.
- Hands on experience with SOA Frameworks/API such as Apace Axis /CXF, JAX -WS 2.0 / RS 2.0.
- Experience working on Open Web Application Security Project (OWASP) in Java.
- Experience working in Enterprise Messaging (JMS1.1/2) Active MQ, Kafka 10.0.1
- Expertise in developing Web applications using IDE tools like Intellij 2017/2018, Pycharm, Eclipse.
- Good experience and exposure to UNIX Shell Scripting.
- Experience on creating Docker images and Docker composing for Microservices.
- Experience working and configuring the continuous integration using Jenkins.
- Working experience on source code quality tool using SonarQube.
- Experience in Source code management tools like GitHub, Tortoise Subversion, CVS.
- Around 6 years of experience in design, development & support of large scale BFSI middleware/web applications (Specialized in Retail Banking, Sales Finance products and Capital Markets).
TECHNICAL SKILLS
Languages: JAVA 5/7/8,PL/SQL, Shell Scripting.
Operating Systems: Unix, WINDOWS 2008/ 2012
Internet Technologies: DHTML, AJAX, JQuery
Server Technologies: JAVA EE 5.0, Node JS 0.6, Anjular JS 1x
DBMS: SQL Server 2000, MYSQL 5.0
IDE: Eclipse Mars/Juno /Kepler /3x & NETBEANS 7
Application & Portal Servers: IBM Web sphere 6.1/7, JBoss 4.X, SUN Java Application Server 7.x / 8.x /9.x (Glassfish), Tomcat 5.x,6x,7
Tools: & API: Spring Cloud, Spring Eureka, Spring Zuul, Spring Oauth2, Spring Hystrix, Spring Boot, Spring Sleuth, Zipkin, Apache Axis/CXF, IBM / Active / Rabbit / Kafka, Spring Batch, Jersy 2x,GUAVA 18/19, Google Protocol Buffers, Gemfire, MongoDB, Jprofiler, Junit / TestNG, Easy Mock, Power Mock, Mockito, JMeter, Cobetura, Findbugs, Clover, Fortify, Hudson, Crucible, SOAP-UI, NDM File Transfer Jobs, Visual Paradigm, SVN.
PROFESSIONAL EXPERIENCE
Confidential, Sterling, VA
Principal Software Engineer
Environment: Java 1.8, AWS - EBS, LAMBDA, ECS, SQS, Cloud Watch, Spring Boot 2, Spring Web Flux, Gemfire, Redis, OpenShift, Kubernetes (KOPS),Apache Tomcat 8, JavaScript, Apache log4j, Lombok, Junit 4, Apache Http 2.7 Server, Angular JS 4x, Apache Kafka 0.10.1, Avro, Postgress.
Responsibilities:
- Using Spring Cloud Config server/client which is horizontally scalable centralized configuration service for distributed systems using AWS S3.
- Experience on AWS Managed Services AWS ECS, AWS Elastic Bean Stalk / AWS Lambda/ AWS Cloud Watch.
- Integrating using the AWS SQS and AWS Lambda.
- Orchestrating end of day jobs using AWS Step functions.
- Implementing API Gateway to route requests to appropriate micro service using Spring Zulu.
- Leveraging Kafka and Avro schemas to write event driven micro services.
- Service discovery using Spring Eureka to determine available services instances.
- Using Hystrix the implementation of Circuit Breaker pattern, which gives a control over latency and failure from dependencies.
- Monitoring application with Turbine and Hystrix Dashboard.
- Publishing and consuming messages using Spring Cloud Stream for Kafka Messages.
- Securing micro services at Gateway using Spring Oauth2, JWT Tokens.
- Automating deployment scripts using python boto3 framework.
- Implementing Spring Cloud Sleuth and Zipkin for Log monitoring.
- Using ELK stack for Log Aggregation in Distributed System.
- Implementing Cache Listener / Gemfire Functions using Pivotal Gem Fire
- Implementing the Docker Images using Docker compose in Dev / QA/ UAT / INT environments.
- Worked on Java Lambdas.
- Implementing the Spring Cache using GUAVA Cache Manager.
- Writing the Restful Services and generating API’s using Swagger.
- Utilized GUAVA 18 Collections and Lombok extensively.
Confidential, Herndon, VA
Technical Architect
Environment: Java 1.8, AWS - EBS, LAMBDA, ECS, SQS, Cloud Watch, Spring Cloud, Spring Eureka, Spring Zuul, Cloud Stream, Spring Cloud Sleuth, Zipkin, Spring Oauth2, Spring Hystrix, Spring Boot, Spring Web Flux, Gemfire, Apache Tomcat 8, JavaScript, Apache log4j, Lombok, Junit 4, Apache Http 2.7 Server, Angular JS 4x, Apache Kafka 0.10.1, Avro, Postgress.
Responsibilities:
- Using Spring Cloud Config server/client which is horizontally scalable centralized configuration service for distributed systems using AWS S3.
- Experience on AWS Managed Services AWS ECS, AWS Elastic Bean Stalk / AWS Lambda/ AWS Cloud Watch.
- Integrating using the AWS SQS and AWS Lambda.
- Orchestrating end of day jobs using AWS Step functions.
- Implementing API Gateway to route requests to appropriate micro service using Spring Zulu.
- Leveraging Kafka and Avro schemas to write event driven micro services.
- Service discovery using Spring Eureka to determine available services instances.
- Using Hystrix the implementation of Circuit Breaker pattern, which gives a control over latency and failure from dependencies.
- Monitoring application with Turbine and Hystrix Dashboard.
- Publishing and consuming messages using Spring Cloud Stream for Kafka Messages.
- Securing micro services at Gateway using Spring Oauth2, JWT Tokens.
- Automating deployment scripts using python boto3 framework.
- Implementing Spring Cloud Sleuth and Zipkin for Log monitoring.
- Using ELK stack for Log Aggregation in Distributed System.
- Implementing Cache Listener / Gemfire Functions using Pivotal Gem Fire
- Implementing the Docker Images using Docker compose in Dev / QA/ UAT / INT environments.
- Worked on Java Lambdas.
- Implementing the Spring Cache using GUAVA Cache Manager.
- Writing the Restful Services and generating API’s using Swagger.
- Utilized GUAVA 18 Collections and Lombok extensively.
Confidential, Ashburn, VA
Senior System Analyst
Environment: Java 1.8, J2EE,Spring Boot, Spring Micro Services, Apache Tomcat 7, Eclipse 4.x, Spring 3/4, XML, XSD, XSLT, JAXB, Apache CXF, Jersey 2x, HTML, JavaScript, Apache log4j, Junit 4, Apache Http 2.7 Server, Angular JS 1x,node.js 4x, Apache Active MQ, Oracle 10g, MongoDB.
Responsibilities:
- Create RFP (Request for Proposal) microservice to provide RESTful API utilizing Spring Boot with Spring MVC.
- Writing Angular 4 business Components.
- Exposing data services using Spring Data Rest.
- Implementing Request/Response model for marshalling/unmarshalling JSON with Jackson libraries.
- Implementing Spring Controller endpoints for Restful style API access.
- Created Sprig Micro Services for Audit logs using Spring Boot.
- Enhancing the existing products using CW Designer.
- Utilize agile methodologies and adhere to coding standards, procedures and techniques while contributing to the technical code documentation.
- POC for integrating MongoDB (robomongo) with AngularJS 4
- Writing the Restful Services and generating it as SWAGGER 2.0.
- Enhanced existing systems according to assigned project requests.
- Implementation of services for Data layer and Application layer.
- Used Apache HTTP 2.7 as web server and integrated with Apache Tomcat 7.
- Utilized GUAVA 18 Collections extensively.