Software Engineer Iii Resume
Austin -, TexaS
SUMMARY:
- 10+ years of Strong experience in complete Software Development Life Cycle (AGILE & Waterfall) including requirement analysis, design, development, integration, testing, Implementation and Maintenance of applications with Design patterns, Java/J2EE, Scala, Big Data, Hadoop Eco System, RDBMS and NoSQL technologies.
- Strong domain knowledge of Retail, Finance, E - Commerce and Telecom domains.
- Highly proficient in designing enterprise applications with Spring standards like Inversion of Control, AOP Aspect Oriented Programming, Security, Transaction Management and MVC.
- Extensive experience of Implementing Microservices based Cloud Architecture on AWS and Pivotal Cloud Foundry.
- Extensive experience in implementing Microservices using SpringBoot, enabled discovery using Netflix eureka server, Hystrix for Resilience and Zuul as Edge Service.
- Extensive experience in Amazon Web Services (EC2, S3, RDS, ECS, ECR, Elastic Load Balancing, SQS, SNS, SES, IAM, Lamdba, Cloud Watch, CloudFormation, EBS and CloudFront).
- Expertise with the tools in Hadoop Ecosystem including Pig, Hive, HDFS, MapReduce, Sqoop, Spark, Yarn, Oozie and Zookeeper.
- Good understanding of Hadoop v1/v2 architecture and hands-on experience with Hadoop components such as Job Tracker, Task Tracker, Name Node, Secondary Name Node, Data Node, Map Reduce and YARN which includes Node manager, Resource manager and App Master.
- Extending HIVE and PIG core functionality by using custom User Defined Function's (UDF), User Defined Table-Generating Functions (UDTF) and User Defined Aggregating Functions (UDAF)
- Experienced in writing Spark programs/application in Scala using Spark APIs for Data Extraction, Transformation and Aggregation
- Experience in Oozie and workflow scheduler to manage Hadoop jobs by Direct Acyclic Graph (DAG) of actions with control flows.
- Expertise in processing large sets of structured, semi-structured data in Spark & Hadoop, and store them in HDFS and Proficiency in Hadoop data formats like AVRO and Parquet.
- Expertise in working with Kafka Streams, consumer and producer.
- Expertise in several J2EE technologies like JSP, Servlets, JSTL, EJB, JDBC, RESTful Web Services, SOAP Web Services, Spring (Core, MVC, JDBC, AOP, DAO, Security, Data JPA, Batch, Kafka), Spring Boot, Struts, JSF, JMS and Hibernate
- Experience in front-end UI development skills using scripting languages like JavaScript, Angular JS, JQuery, HTML, HTML5, XML, JSON, Ajax, Bootstrap and CSS.
- Extensive experience in NoSQL databases like HBASE and MONGODB.
- Extensive experience in Relational Database (Oracle, MySQL and Postgres) Design, Database & Query Optimization, Performance Tuning & Indexing and Implementation of database objects including Tables, Views, Stored Procedures, Functions and Triggers.
- Proficient in Code Refactoring and Test Driven Development by using Junit and Mockito.
- In-depth knowledge and experience with Spring Security, SSO, LDAP and OAuth 2.0
- Extensively used CI/CD solutions including GIT, Maven, Bamboo, Jenkins, Docker and AWS
- Well versed in Atlassian tools like Bamboo, Bitbucket, Github and JIRA
- Good experience in Machine learning (Linear and Non-Linear Regression, logistic regression, Naive Bayes, Decision Tree, Random Forest, Support Vector Machines, and dimensionality reduction).
- Highly motivated, detail oriented, ability to work independently and as a part of the team with excellent Technical, Analytical and Communication skills.
TECHNICAL SKILLS:
Languages: Java, Scala, SQL, PL/SQL, XML, JavaScript, CSS, HTML
Database: Oracle, MYSQL, Postgres, MongoDB, HBASE, Redis
Big Data: Hadoop, Spark, Spark-SQL, Spark Streaming, Pig, Hive, HDFS, MapReduce, Sqoop, Yarn, Oozie, Zookeeper, Kafka, Kafka connect, Flume
J2EE Technologies: Servlets, JSP, JSTL, JDBC, JNDI, EJB, JMS, Web Services (RESTFul and SOAP)
Frameworks: SpringBoot, Spring (Core, MVC, JDBC, AOP, DAO, Security, DataJPA, Kafka), Struts, JSF, Hibernate, Apache CAMEL
Web Services: RESTFul, SOAP
Amazon Web Services: EC2, S3, RDS, ECS, ECR, Elastic Load Balancing, SQS, SNS, SES, IAM, Lamdba, Cloud Watch, CloudFormation, EBS, CloudFront
UI Web Technologies: Angular JS, Bootstrap, HTML, CSS, XML, JavaScript, AJAX, jQuery, JSON
Functional Domain: Retail, Finance, E-Commerce, Telecom
Machine Learning: Regression: Linear and Non-Linear; Classification: Logistic regression, Naive Bayes, Decision Tree, Random Forest, Support Vector MachinesApplication Servers: Web Sphere, Web logic, Apache Tomcat, Jboss, OC4J
Operating System: Windows, UNIX, Linux, Solaris, AIX
Development Tool: Intellij, RAD, Eclipse, WSAD, Toad, NetBeans, STS, Sublime Text
Tools: JUnit, Mockito, Selenium, HPFortify, Log4j, Apache ActiveMQ
Version Control Tools: GIT, CVS, SVN, MKS, JIRA, Confluence
Build Scripts: MAVEN, ANT, Shell scripts
Methodologies: Agile, Scrum, Waterfall, Iterative
PROFESSIONAL EXPERIENCE:
Confidential, Austin - Texas
Software Engineer III
Environment: Java, Scala, Spring Boot, Spring Core, Spring MVC, Spring AOP, Spring Security, Spring JDBC, Pivotal Cloud Foundry, Maven, Bamboo, Jira, Confluent, RESTful web services, Swagger, Liquibase, Splunk, Hadoop, Pig, Hive, HDFS, MapReduce, Sqoop, Yarn, Oozie, Zookeeper, HBASE, Kafka, Kafka connect, Spark, Spark SQL, Spark Streaming, Postgres, Junit, Mockito, AWS(EC2, S3, Lambda), GIT, Docker, SFTP, OAuth, Microservices, Agile
Responsibilities:
- Involved in Requirements gathering, analysis and design with Test driven development based on J2EE specifications and Microservices architecture.
- Used Spring Core Annotations for Dependency Injection Spring DI and Spring MVC for REST API s and Spring Boot for micro-services and Kafka as message broker, Postgres as backend database and Redis as in-memory database.
- Design and implementation of Spring-Security for authentication and authorization process
- Configured Spark streaming to receive real time data from the Kafka and store the stream data to HDFS
- Used AVRO, Parquet file formats for serialization of data.
- Creating Hive (HCatalog) tables, loading and analyzing data using Optimized Hive queries with Partitioning and Bucketing techniques, for controlling the data distribution
- Efficiently collecting, aggregating and moving large amounts of log data from web/application servers and integrated using into HDFS using flume.
- Design & Develop ETL workflow using Oozie which includes automating the extraction of data from different database into HDFS using Sqoop scripts, Transformation and Analysis in Hive/Pig and Parsing the raw data using Map reduce
- Spark development in Scala for data processing and transformation. Used persistence, broadcasting, parallelization, caching.
- Used Kafka Streams for reading the data published in kafka topics and parsed data with configuration data is saved in postgres db in jsonb structure. Used Liquibase for adding or updating any postgres database features in higher environments.
- Implemented Elastic Search to decrease query times and increase search capabilities.
- Extensive experience with container based deployments using Docker, working with Docker images, Dockerhub and Docker registries.
- Implemented a Continuous Delivery pipeline with Docker, Bamboo and GitHub and AWS AMI’s, whenever a new GitHub branch gets started, Bamboo, our Continuous Integration server, automatically attempts to build a new Docker container from it, The Docker container leverages Linux containers and has the AMI baked in. Converted our staging and Production environment from a handful AMI’s to a single bare metal host running Docker.
- Proftpd setup on EC2 instance as SFTP server for uploading data files. S3FS is mounted on EC2 for pushing the files from EC2 to S3 bucket. Lambda functions are used for triggering as per the configuration for parsing the data files.
- Define unit test cases based on the technical design/functional design in a way that is comprehensive and verifies accuracy of developed features.
- Extensively used java1.8 features like Lambda expressions, Method references, Stream API, Parallel Streams, Producer, Consumer, BiConsumer etc and implementation using core java concepts of Multi-Threading, Exception Handling, NIO, Collection APIs and Concurrent APIs.
- Used Kafka Connect connectors for reading Oracle and MySql tables as and when data inserted or updated will be pushed to kafka topics.
- Used Splunk for tracking the logs and visualizing as dashboards.
- Followed Agile practices Grooming, planning, code, code reviews, retrospectives and CI/CD.
Confidential, St Petersburg - Florida
Technical Lead
Environment: CoreJava, JSP, Servlets, JSTL, Bootstrap, Angular JS, HTML, CSS, Spring Boot, Spring Core, Spring MVC, Spring AOP, Spring Security, Hibernate, RAD, Maven, Jenkins, Log4j, RESTful web services, Kafka, Apache CAMEL(Integration), WebSphere Application Server, Oracle SQL, PL/SQL, MongoDB, Redis, Junit, AWS, Hadoop, Pig, Hive, HDFS, MapReduce, Sqoop, Yarn, Oozie, Zookeeper, HBASE, Kafka, Spark, Spark SQL, Spark Streaming, GIT, Microservices
Responsibilities:
- Involved in Requirements gathering, analysis and design and documentation as the application was started from scratch.
- Full stack development based on J2EE specifications with Microservices architecture.
- Translating business and functional requirements into documented technical specifications
- Used Spring Core Annotations for Dependency Injection Spring DI and Spring MVC for REST API s and Spring Boot for micro-services and Kafka as message broker, MongoDB as backend database and Redis as in-memory database.
- Implemented security to the Restful APIs and also secured the domain by using SSL layer. Performed SSO implementation, developed active policies to customize the functions of the policy as per the business requirements
- Experience in Identity and Access products including Identity and Access Management, LDAP Directory Server
- Extensive experience in Angular.JS for application implementation, proficient in creating modules, controllers, routeProviders, factory services, ng-repeat, customizable filter, http get/post methods and directives to realize functionalities like REST service with Ajax call, input validations, searchable and sortable contents.
- Stored authentication and authorization detail in database. Used these db authorization detail with spring security annotation on method for apply method level spring security. Used spring security jsp tags to provide UI level spring security.
- Extensively used AOP concepts using spring for logging and declarative transactions using Spring Proxy Beans.
- Designed and developed the data modeling using JPA-Hibernate and designed API with Spring implemented Spring EH-Cache
- Participated in Grooming, estimation, code, code reviews, CI/CD and support for CashLine project. Used Jenkins for application build and deployment on AWS Platform.
- Involved in creating the Cloud formation templates to pro-vision EC2 instances in AWS to enable deployment of an entire stacks in a matter of minutes instead hours.
- Participation in requirement analysis and translation of business requirements into product designs elaborated in technical specifications, design documents, Use cases and technical requirements
- Designed various tables required for the project in Oracle 11g database, Oracle web Centre and used the stored procedures in the application and wrote Stored Procedures, Triggers and Functions on SQL Server as well as PL/SQL on Oracle to support both databases for the application.
- Define unit test cases based on the technical design/functional design in a way that is comprehensive and verifies accuracy of developed features.
- Extensively used java1.8 features like Lambda expressions, Method references, Stream API, Parallel Streams, Producer, Consumer, BiConsumer etc and implementation using core java concepts of Multi-Threading, Exception Handling, NIO, Collection APIs and Concurrent APIs.
- Implemented the data layer for using the MongoDB database and coming up with the JSON structure to use/store minimizing the dependency and redundancy.
- Designed and developed producer program to parse the usage data records and push them to the Kafka broker and Consumer program that integrates to Kafka topic and consumes the data required for analysis.
- Implemented agent-server messaging dialog using Camel and JMS (Active MQ implementation).
- Identifying and fixing all the security vulnerability issues using HPFortify tool.
- Used micro service architecture with Spring Boot based services interacting through a combination of REST and leveraging AWS to build, test and deploy applications.
- Guide and mentor to the team, resolved technical problems and provided solutions.
Confidential
Technical Lead
Environment: CoreJava, Angular JS, JSP, Servlets, Struts, Spring Boot, Spring Core, Spring MVC, Spring JDBC, Spring AOP, EJB, JDBC, Web services, jQuery, HTML, CSS, RAD, MKS, AJAX, Log4j, JSTL, SOAP and RESTful web services, JMS, ActiveMQ, WebSphere Application Server, Oracle SQL, PL/SQL, Junit.
Responsibilities:
- Involved in analysis, specification, design, and implementation and testing phases of Software Development Life Cycle (SDLC) and used agile methodology (SCRUM) for developing application.
- Involved in discussions with business analysts and designed the FSD's and Design documents and participated in Sprint Planning.
- Worked on AngularJS custom directives and filters and extensively used AngularJS features like directives, scope, dependency injection and built-in services.
- Designed and developed the User Interface using JSP, Servlets and Java for both Business Logic and GUI development.
- Build microservices for the delivery of software products across the enterprise.
- Developed micro services using springboot exposed as REST API and integrated with angularJS based web applications. Developed REST web services authentication using Spring Security.
- Implemented transaction management using Spring declarative transaction management with Spring AOP concepts
- Used various Core Java concepts such as Multi-Threading, Exception Handling, NIO, Collection APIs to implement various features and enhancements.
- XSLT style sheets for the XML data transformations.
- Integrated application with Spring Security for form based authentication and authorization.
- Working in creation of Sequences for automatic generation of Transaction identifiers.
- Creating indexes on tables and Optimizing Stored procedure queries.
- Developed test classes in JUnit for implementing unit testing.
- Developing Interactive Voice Response (IVR) /Voice Response Unit (VRU)
- Created stored procedures, triggers, sequences and PL/SQL statements to interact with the database.
- Implementation based on Microservices architecture and Extracted reusable modules from a monolithic application into libraries for use in new microservices
- Experience in performing end to end testing by using Junit and Mockito.
- Identifying and fixing all the security vulnerability issues using HPFortify tool.
- Providing technical support and oversight to team during development and rollout phase to ensure that the solution is properly coded & implemented.
Confidential
Technical Lead
Environment: CoreJava, JSP, Servlets, JSF, Rich Faces, JavaScript, Hibernate, Web services, HTML, CSS, jQuery, Eclipse, CVS, AJAX, Log4j, WebSphere Application Server, Tomcat, Oracle, Junit.
Responsibilities:
- Involved in Requirement gathering, Conceptual design, Analysis, Detail design, Development, System Testing, and User Acceptance.
- Involved in system design and development in core java using Collections, multithreading and exception handling.
- Involved in the design and development of application using JSF and Hibernate frameworks.
- Involved in developing Classes diagram in UML showing generalization and other relationships, Sequence diagram describing the interaction of objects over time.
- Developed UI screens involving Servlets, JSP, JavaScript and XML DOM parser.
- Involved in creation of both service and client code for JAX-WS and used SOAP UI to generate proxy code from the WSDL to consume the remote service.
- Created connections to database using Hibernate Session Factory, using Hibernate APIs to retrieve and store data to the database with Hibernate transaction control.
- Implemented Java Persistence API (JPA) through Hibernate.
- Provided production support for the application both onsite and remotely
Confidential
Technical Lead
Environment: CoreJava, JSP, Servlets, Spring, JDBC, Log4j, jboss, Oracle, UNIX.
Responsibilities:
- As a developer worked in internal tools development.
- Involved in understanding the company internal requirements, design, implementation, testing phases of the internal tools.
- Used Core JAVA Collection API, Generics, Annotations, Reflection API, multi-threading in application development.
- Implemented the application using JAVA/J2EE pattern by developing Servlets, JSPs, Java classes and Oracle interactions.
- Designed the database model with respect to the requirements.
- Used JDBC to connect to the back-end systems from mid-tier JAVA components.
- Used MVC design pattern to implement the design of the project.
Confidential
Analyst
Environment: CoreJava, JSP, Servlets, Struts, Hibernate, JDBC, EJB, JMS, Log4j, Weblogic Application Server, Oracle, UNIX.
Responsibilities:
- Interact with Client and business analysts to understand business requirements and translate these into technical designs.
- Development of Project using J2EE Technologies (Java Servlets, JSP and JavaScript).
- Extensively worked on Servlets, JSPs, Struts and Tiles, Java script, Ajax, Expression language, JSTL, JSP custom tags.
- Used Core JAVA Collection API, Generics, Annotations, Reflection API, multi-threading in application development.
- Configured and maintained WebLogic application server installation for development purposes.
- Designed and Implemented Top-Down and Bottom-Up Web Service (WSDL) approaches using RSA (Rational Software Architecture) using JMS and HTTP as the underlying transport for SOAP
- Involving in Unit, Integration and Pre-production testing of the application.
- Prepared the test plans and procedures for the project.
- Experience in working with the Workflow tool to track and understand the application flow.
Confidential
Technical Lead
Environment: CoreJava, JSP, Servlets, Struts, JDBC, EJB, Log4j, Weblogic Application Server, Oracle, UNIX.
Responsibilities:
- Created data access objects (DAO) to access the Oracle databases using Sql queries and JDBC.
- Used JavaScript for Client Side Validations.
- Involved in a full life cycle Object Oriented application development - Object Modeling, Database Mapping, GUIs Design.
- Involved in front end design using HTML, CSS, JSP, JavaScript and JDBC to create web Servlets.
- Created tile definitions, struts-config files and resource bundles using Struts framework.
- Developed XSL templates and XSL schemas to generate the view part of MVC architecture.
- Involving in Unit, Integration and Pre-production testing of the application.
- We create work order, delivery order numbers and track the project's progress and we can assign employees to different work order projects.