Full Stack Developer Resume
Atlanta, GA
SUMMARY:
- 10+ years of in - depth expertise in developing scalable applications with a focus on full stack development, that includes developing customer facing GUI applications, webservices, and microservices.
- 10+ years of extensive experience developing enterprise business application using Servlets1.x/2.x, JSP, Struts 2.0, Hibernate 3.0, JDBC, GWT, JMS, Spring MVC, Java Script and Web Services. Possess expertise in OOAD using Java skills ranging from defining the problem statement to well documented designs.
- Implemented business layer by using Hibernate with Spring DAO and also developed mapping files and POJO java classes using Object Relational Mapping.
- Expertise in developing and registering web services using JAX-RPC, JAX-WS, SAAJ, JAX-RS, SOAP, REST, WSDL.
- Experience in developing microservices deploying to Amazon Web Services (AWS).
- Experience in developing SPA application using AngularJS, Angular4/5, Redux and Bootstrap.
- Experience in AJAX, XML, XSLT, XPATH, and Web Services with SOAP to design, deploy, develop and implement the internet applications.
- Experience in writing test-cases in Java environment using JUnit.
- Experience in Configuration Management such as or using SVN and GIT.
- Experience working with distinct SDLC methodologies like Waterfall, Agile (TDD, SCRUM).
- Experience on IDEs such as Eclipse, WebStorm and IntelliJ.
- Implementing extensive logging mechanisms using log4.
- Experience in deployment using Application Servers such as Apache Tomcat, and JBOSS using shell scripts
- Excellent analytical, problem solving and interpersonal skills. Ability to learn new concepts fast. Consistent team player with excellent communication skills .
- Exposure to mobile technologies like swift (ios) and android
TECHINICAL BACKGROUND:
Framework: Angular5, Struts2.0, Spring MVC, Spring, Hibernate.
Web Technologies: HTML5, CSS3, LESS, SASS, Sencha touch, XML, GWT, XPath, DOM, DTD.
Cloud Services: Amazon Web Services (AWS).
Java Technologies: Servlets, JSP, AJAX, JDBC, JMS, EJB, RMI, Web Services, SOAP, Log4j
JavaScript Libraries: jQuery, Bootstrap
Databases: Oracle 7.x/8.x/10 g, MYSQL
Web Server: Java Web Server, Apache-tomcat-6.0.10
IDE: Eclipse 3.1.1, WebStorm, IntelliJ
Configuration Management: SVN, GIT, Jenkins.
Build Tools: Apache Ant, Maven
Software Modeling Language: UML, Visio, Enterprise Architect
Methodologies: OOPS, OOAD
Tools: Apache Ant, Log4j, JUnit, JIRA for Bug tracking, SSH 3.2.9, Maven 2.0.9, Putty.
PROFESSIONAL HISTORY:
Confidential, ATLANTA, GA
FULL STACK DEVELOPER
Responsibilities:
- Developed a SPA admin portal version1 using AngularJS and Bootstrap.
- The portal is developed using JavaScript libraries like jQuery, bootstrap, nouislider and high charts.
- The page is responsive where each user interaction is captured and calls a backend API to update the values in the database.
- Developed a SPA admin portal using Angular5, Bootstrap and Redux stores.
- The portal is guarded using a JWT auth token with an expiry date/time that automatically redirects to login once the token is expired.
- The admin portal displays components like nouislider, switches, dynamic component using various JavaScript libraries.
- The admin portal displays components like pie charts, bar charts and world map chart for user enrollment analytics using JavaScript library high charts.
- The admin portal creates a dynamic component to display rules based on the rule engine.
- The state of the user interface components is maintained in a redux store. Any user interaction is captured by a redux action to update the store and propagate the store changes to a backend web API.
- Build Script is written to do AOT compilation, tree-shaking with rollup that minimize the JavaScript libraries to reduce the load time of the site. The script also deployed the code distribution to AWS.
Confidential
FULL STACK DEVELOPERResponsibilities:
- Lambda function to make a series of methods calls from making creating a request based on user criteria, a call to an external API and process the results to get a final score. The lambda also traps error to return feedback to the user in all the appropriate places.
- Used aws sdk to retrieve secret username and password for an authorization header.
- Stored the file and retrieved in the lambda to make the external API.
- Wrote a serverless yaml to describe the lambda deployed to the AWS.
Confidential
FULL STACK DEVELOPERResponsibilities:
- Lambda function to get the criteria from request and add the request data to DynamoDB. The data is encrypted with base64.
- Created a DynamoDB database.
- Wrote a serverless yaml to describe the lambda deployed to the AWS.
Confidential
FULL STACK DEVELOPERResponsibilities:
- Developed a SPA Confidential that reads Qrcode from the user iPhone, makes a call to the API to retrieve the qrcode details, make a call to API to access the federated identity of a customer stored in a treasure map to display the user details.
- The app is developed using Angular5 and Redux.
- Used a JavaScript library to access user’s camera, read qrcode and parse the json in qrcode.
- The state of the page is maintained using a redux stored.
- The qrcode is used to retrieve federated identity of a customer stored as treasure map. This identity is then displayed for the user.
Confidential, ATLANTA, GA
SENIOR SOFTWARE ENGINEER
Responsibilities:
- Designed and implemented a web security filter framework using 2-factor authentication when user is access is an unrecognized network.
- Implementation of masking data using a data lens concept when user is roaming.
- Implementation of email communication using the java mail to send formatted email content to the customer.
- Implemented Log4j logging with messages following customer critical path’s that was instrumental in solving issues during production support.
- Create QA documents with all possible workflows encountered by the customers with potential issue paths.
- Created routing pages to reflect all possible scenarios to assist QA with testing to reduce the defect run rate.
- Involved in the design to refine the workflow across multiple products to seamlessly migrate three products.
- Implemented the routing of the different workflow using the struts framework and Oracle database to hold status of migration.
- Implemented Log4j logging that was critical in production support for tracing issues.
- Create QA documents with all possible workflows encountered by the customers and the potential issue paths.
- Created routing pages to reflect all possible scenarios to help QA with testing to reduce the defect run rate.
- Moving from JBOSS JMX console to manage our apps configuration to ServletContextListener to loaded application properties.
- Removed our application authentication from a JBOSS container value to application filters.
- Changed ant scripts to reflect Tomcat server.
- Migration from JBOSS context container-based authentication to servlet filter authentication.
- Migration of application monitoring and database purge projects from a JBOSS MBean Services to using quartz.
- Analysis and removal of JBOSS dependencies in all the projects.
- Provide support to the development and QA team by resolving environment switching conflicts during the migration to the tomcat server.
- Implemented the front-end development using Sencha Touch 2.
- User Interface (UI) Styling using SASS.
- Created and implemented custom UI controls for various functions such as sliding, panning and gesture recognition.
- Design the stores, models, views and controller to implement the functionality.
- Design and Implement the Ajax service layer calls to service the front-end.
- Front-end JavaScript functionality.
- Create a framework to allow for masking data based on permission's/customer.
- Implemented the new UI functionality for the CLEAR collections product.
- Developed a RESTful interface to get data from an external source.
- Designed a system that stores data (token) for a time period and periodically gets updated.
- Created unit tests with MOCKITO to test exceptions handling of the critical functionality of holding the token, and handling of the various boundary and edge case for the expiration period.
- Worked extensively with product development to improve customer experience with user-friendly error messaging.
Confidential
Lead/Architect
Responsibilities:
- Designed and implemented the gateway.
- Used Ivy as repository manager to load jars needed for the implementation.
- Deployment of gateway in the dev environment to allow for testing.
- Responsible for adding the project to subversion.
- Responsible for adding the project to continuous integrated build Jenkins.
- Created Agile tasks and time estimated for the project.
- Managed the team members working in the projects providing functional input.
- Provide production support for issues related to the project.
- Extensive unit testing using MOCKITO to test requests, validation logic, and internal processing logic.
- Involved in converting XML to java objects and converse using JAXB API.
- Designed the API using a RESTful Interface that consumes incoming JSON and returns appropriate product account features via a JSON.
- The API required logic interactions with other API layers to retrieve permission for a user and logic to make determination to return default or enhanced values.
- Designed and implemented the retrieval of the time constraint token from a REST API service.
- Add logic to check the expiry status of token and retrieve another once expired.
- Add common logic for all areas of application to add the token for all their request API's.
- Provided JUnit tests coverage to test the token time constraints violations.
- Designed the UI framework for news searching using UiBinder.
- Used extensive Guava principles to design flexible queries.
- Created ps for user to save their searching ps.
- Allow the user to create their custom query options.
- Limiting errors in query by adding extensive Junit tests using MOCKITO.
- Used Hibernate as ORM tool to store the persistence data into the Oracle9i database and JDBC for database-independent connectivity.
- Create a framework to allow transactional billing of content for customer. Billing of customer was based on searches or report. Set up the framework to allow for transactional billing of content .
- Creation of implementation documentation for functional areas of apps helping in the onboarding of new dev teams.
- Creation of documentation to facilitate agile estimates.
- Primary Technical Contact for various functional areas of apps used in the onboarding of new dev teams.
- Assist the QA in testing due to extensive domain, code base and functionality knowledge.
- Solving upper environment testing issues.
- Writing database scripts for the upper environments to allow changes to the database.
- Configured Hibernate mapping files and Hibernate configuration files to connect with the database.
- Extensively used the Hibernate Query Language (HQL) for fetching and utilize the data from the Oracle 9i.
- Monitored the error logs using Log4j and fixed the problems.
Confidential, ATLANTA, GA
WEB DEVELOPER
Responsibilities:
- Designed and implemented a web-based voting system for presidential election for the College of Health and Human Sciences.
- The proposed system has user authentication and persistency to prevent invalid access. It maintains persistent data about the voting status for a user to prevent voter fraud. The system received votes submitted by various faculty members in the college.
- The system displayed the voting results to the web administrator and the president in a graphical form.
- The system is developed using ASP, CSS, JavaScript and MYSQL databases.
- Designed and developed a web application system for identifying potential progenitor gene(s) for influenza A (H1N1) virus. The web application is a site for biologists to identify if a particular virus is a type of H1N1 virus.
- The application uses Complete Composition Vector (CCV) methodology implemented a Java Component to calculate the genetic distance between the input virus and progenitor viruses. It uses a tree structure to store the patterns similarities between the viruses and their genetic distance is calculated based on the number of similarities in patterns.
- The application also uses the MST and hierarchical clustering implemented a Java Component to group the viruses on the genetic distances between the viruses based on the standard deviation between the distances.
- The web application is created using PHP, CSS, and JavaScript. The CCV and MST Java components are plugged in as Java Beans in the application.
- Designed and developed a protein structure modeling web server for biologists based on any input sequence. The web server consists of a daemonic framework that acts a middleware for handling the distributed processing of bioinformatics jobs required to arrive at the 3D structure.
- The middleware framework contains the following components: (a) service - to start a job daemon based on client request (b) job daemon - to accept, validate, and parse the XML input to the job unit. (c) job unit - reads the input from XML, processes the input and writes the output to XML.
- The page with the input sequence will be processed by a CGI-Script that calls the Python program that implements the middleware framework. This framework will funnel the input sequence as XML input to the job daemons which starts the job units. There are six job units that process the XML input and pipe the results to the next job unit in the form of XML.