Software Development Engineer Resume
Kansas City, MO
SUMMARY
- Around 6+ years of extensive experience in the software development industry with expertise in Software Analysis, Design, Development, Implementation and Testing of pre deployment applications using JAVA and J2EE.
- Well experienced in collaborating with other team members in the company (through various telecommunication and code version control systems such as git) and coordinating with client to convert business requirements into technical specifications.
- Collaborated and contributed to projects that required technologies such as Spring, and Hibernate
- Strong working knowledge of OOP creational design patterns such as Singleton, Factory, Factory Method, Builder and Prototype. As well as the behavioral design patterns such as Iterator, Interpreter, Strategy and Observer
- Practical knowledge of Spring Dependency Injection, Spring MVC, Spring JDBC, Spring (Core, WEB, and DAO).
- Working experience of RDBMS like MySQL and Oracle.
- Well versed with consuming and producing Web Services such as SOAP and REST, formats like XML and JSON.
- Working knowledge of Front End development technologies like HTML, CSS, JavaScript, JSP, JSTL.
- Proficient in backend development technologies such as Servlets and JUnit.
- Demonstrated and proven ability to work with parser like Jackson(JSON).
- Hands - on experience working with source control tool such as SVN.
- Working experience with application servers like JBOSS, GlassFish and Tomcat.
- Experienced with build tools like Maven and ANT.
- Implemented various Ajax Frameworks such as jQuery and DOJO for some front end development
- Worked on and developed Multi-Threaded/Concurrent applications and Unix Shell Scripting.
- Experience with programming language like C, C++, Python, MATLAB.
- Comfortable working with Windows and Linux based environments.
- Ability to adapt to new software applications and products, self-starter, with excellent communication skills and deep understanding of business flow
- Deep understanding of Agile and Waterfall development methodologies
- Extremely enthusiastic and excellent team player Experience working in Financial, Insurance and Health Sectors.
TECHNICAL SKILLS
Languages: Java/J2ee, SQL, PL/SQL, HTML, DHTML, JavaScript, C, C# C++UML, XML, Python
Web Technologies: JSP, Servlets, JAX-WS, AXIS, SOA, SOAP, JMS, RMI, JSON.
XML/JavaScript: DOM/SAX, DOJO
J2EE Standards: JDBC and JNDI
Design Patterns: Factory, Singleton, DAO and FrontController
RDBMS: Oracle, SQL Server and MySQL
IDEs and Integration Tools: DrJAVA, Eclipse and JDeveloper, NetBeans, ANT
Web/App Servers: JBoss and Tomcat
Frameworks: Spring (IOC, MVC, AOP) and Hibernate
Operating Systems: Windows 7, UNIX, Solaris, Red Hat and AIX
Scripting and Analytics: Python, MATLAB, R
Development Tools & Database: CVS, JUnit, Oracle, SYBASE, IBM WebSphere
PROFESSIONAL EXPERIENCE
Confidential, NY
Senior Software Engineer
Responsibilities:
- Modified code of custom, homegrown application that manages Lab Information Systems using JSP and Java.
- Altered Stored Procedures for Funding application that has backend Oracle component to it.
- Changed Front End portion of Manuscript application that involved adding functionalities by rewriting Java Server Pages and JavaScript code on the Front.
- Tested applications with JUnit and Maven Integration verification to make sure I/O’s and variables are complying.
- Deployed applications in Staging environment and then in Production after UAT testing has been completed.
- Collocated two applications on the single VM instance that saved the company up to $30,000/year in server fees.
- Configured Tomcat server to accommodate multiple WAR files and different application database connections.
- Reviewed designs of different applications with our Enterprise Architects to suggest efficient ways to customize our Web Applications
- Performed multiple CRUD operations on our Oracle and MSSQL databases that were hosted on Linux and Windows servers.
- Worked with Struts framework on applications that had a very large code base pulled from Confidential ’s Git and OpenGE repositories.
- Updated my team on the progress of all work during daily Scrum meetings. Created and distributed all stories using Trello and Jira tools.
- Conducted meetings on future software upgrade cost and features that would satisfy customer’s needs.
- Worked with my tech lead to calculate, design and testing procedure for our future application development and support.
- Documented all the new features added to applications, lessons learned from troubleshooting of vendor supported applications in Alfresco knowledge base.
- Applied best practices in Application Support by being proactive in preventing applications from crashing, running out of VM memory and expiration of certificates.
- Managed applications on Linux, Windows and AWS cloud deployed applications.
- Communicated extensively with customers, vendors and Network and Database teams on daily basis to create robust application production and support environment to satisfy every aspect of customer needs.
- Refreshed scripts of .bat files for scheduled task including Cron jobs that ran to load and update database data.
Environment: Java 1.7 and 1.8J2EE JavaScript JavaServerPages(JSP) Struts Oracle 11g Database/ Oracle Sql Developer/Stored Procedures MSSQL CSS HTML JSP XML JUnit Linux Shell Jenkins Windows 2012 Server AWS
Confidential, Kansas City, MO
Software Development Engineer
Responsibilities:
- Delivered initially given project to redesign API patient visit list, that recorded and stored individual patient’s visit time, reason and length of stay at a hospital to be more lightweight and get rid of redundant classes.
- Redesigned and refactored Patient Visit List project using UML diagrams and presented to the senior Architects
- I was tasked to create a RESTful web service for allergies department using FHIR coding standards.
- My work involved refactoring of the Code Translator, Resource Provider, writing new Service to enable Allergy by Ids search and retrieval.
- Participated in code reviews using Atlassian Crucible. Reviews at Confidential are very detailed and have to adhere to the certain formatting and naming standards. I have put out several reviews on my own after writing the service classes and refactors of previously written classes.
- Set media type of output service into Postman using JSON objects instead of plain text or XML
- Created POJO’s for new services that will be using Nomenclature instead of individual Allergies or Person names
- Used SPLUNK monitoring tool to monitor application testing and productions deployments.
- Initiated suggestions board using online IRC group chat to facilitate communication between Client requirements and the DevOps team including our Allergies team.
- Tested all of my code by writing Test classes for unit and Integration testing
- Pushed/Pulled all the work with Git script and monitored all the commits using Atlassian SourceTree
- Performed some file changes using Unix Shell Scripting
- Used Oracle Sql Developer to look up and retrieve specific information about Allergies and Patients.
- Employed Maven Developer tools to build and test my projects
Environment: Core Java/J2EE, Tomcat 7, Git, Atlassian SourceTree, Jenkins, Maven, Crucible, Jira, Agile/Scrum Methodology, Postman, Eclipse IDE, RESTful web services.
Confidential, San Antonio, TX
Java/J2EE Developer & Integrator
Responsibilities:
- Was present and participated in every meeting that involved system designs using our new Fire Wall rules for our primary and secondary(back up) servers situated on our onsite and offsite locations using Server Data Mappings
- Read and Applied Security and Exchange Commission’s (SEC) Check Clearing Guidelines into my coding and deployment tasks
- Developed new firewall rules based on our client (Bank, Insurance, Investments divisions VPs) recommendations and needs by closely cooperating with server side software and hardware architects
- Worked on software improvements to the server to server communications using Bottleneck reduction and Scheduling optimizations fundamental principles of Computer Science
- Investigated and Identified Batch Job Failures points by presenting them to Deposits (my team) and our clients’ VPs of technology on issues and tasked to eradicate the latencies and failures.
- Added resiliency to above mentioned ICL Batch program by improving scheduling algorithms in MQs added new methods to X937 Writer class using IBM WebSphere integrated Eclipse and other tools.
- Used Java Utilities classes integrated with Hibernate to perform CRUD operations using lazy loading principles
- Increased optimization of the batch job in order for it to be able to handle large traffic volume without manual intervention my limiting check reader numbers to 15000 at a time. Objective was attained by making changes to HibernateBatch class that contained HQLs for the database access.
- Goal was achieved after the batch job has generated One ICL file before being sent to JP Morgan’s Image Cash Letter clearing house.
- Batch jobs were run by using scripting windows .bat and .cmd file that included .jar file generated by running ANT script that was also written by me to automate and integrate repetitive tasks of running 18 different packages needed to generate final .jar file necessary for the Batch Job run.
- Updated database of deposit checks by using SQL Oracle scripts to make them available for insertion to the batch job runs that then generated single ICL file.
- Optimized Existing DAO classes for a better performance by integrating them into Multi-Threaded reader and writer classes for HibernateBatch class
- Used SPLUNK monitoring tool to monitor application testing and productions deployments.
- Added java threading features to simultaneous reader and writer for ICL file generations in X937 Writer and X937 Reader classes
- Wrote JAXP 1.5 parser class in order to read XML data and feed it into Orbograph program that was extracted from physical check using native Pattern Recognition software integrated into Confidential app that gives our members ability to perform mobile check deposits at their convenience.
- Optimized data flow and added to new features of data optimizations to our software hosted on Tomcat Server that contains our data analytics and pattern recognition functions.
- Integrated various Third Party Vendor Applications for functionality and feature improvements to our Deposit Application using JNDI
- Collaborated with overseas databases teams on improving security and decreasing latency located in Guadalajara, MEXICO and London, ENGLAND on scheduling retrievals and updates performed during deposit operations
Environment: Core Java/J2EE, multithreading JMS, XML, JDBC Eclipse, UML, CVS, JUnit, ANT, SPLUNK, Oracle, MySQL, IBM WebSphere, IBM Rational Team Concert, Shell Scripts, UNIX, MQ, QA Developer Test, Tomcat, Statistical Image Analysis
Confidential, St. Louis, MO
Java/J2EE Developer
Responsibilities:
- Have been involved in Identification the Business and System requirements of the project.
- Contributed extensively to preparation of the Detailed Design document for the project using UML.
- Was also involved in designing of the data flow for the client-side screens and the object interaction layer for the server side components using Rational Rose.
- Involved in Use Case Realization, Use Case Diagrams, class diagrams and sequence diagrams using Rational Rose.
- Wrote Core Java Components and Engines for the data processing and directives for data manipulation and computation
- WSDL (types, message, portType, bindings and service) was used for publishing Web Service interfaces.
- Used SOAP for Web Services Axis (Apache) as a Consumer by exchanging XML data between applications over HTTP.
- MQ was used to provide a single unifying transport that reduces cost and maintenance efforts, including support for HTTP, REST and JMS.
- Wrote various classes for the Multithreading component of the web application for the data processing.
- Used XML/XSLT for transforming common XML format and SAML for Single Sign-On feature.
- Designed configuration XML Schema for the application as well as used JavaScript for the client side validation.
- Used XMLHttpRequest Object to provide asynchronous communication as part of AJAX implementation.
- Designed and implemented Java Classes to use JAXP parser to create Java objects so as to be able to modify the data received in the response.
- Multithreading and inter locking was used to make sure all the processes were run in a designated order.
- Wrote Ant Scripts to automate the build and deploy process.
- Involved in Code Review, Unit Testing (JUnit) and Integration Testing.
- Aided in database connectivity and CRUD implementation using Hibernate ORM.
- Mentored junior developers in Front End technologies and guided them towards their goals.
Environment: Core Java/J2EE, multithreading Servlets, JSP, Java Swing, JSTL, EJB, JMS, XML, JDBC Eclipse, UML, Rational Rose, CVS, JUnit, ANT, Adobe Flex, Visio.
Confidential, Overland Park, Kansas
Java/J2EE Developer
Responsibilities:
- Developed the J2EE application based on the Service Oriented Architecture by employing SOAP and other tools for data exchanges and updates.
- Developed Functional Requirement Document based on users’ requirement.
- Used Design Patterns like Singleton, Factory, MVC, Intercepting Filter, Front Controller, Business Delegate, Service Locator, Session Facade, Transfer Object and DAO.
- Developed using new features of Java 1.5 like Annotations, Generics, enhanced for loop and Enumerations. Developed the functionalities using Agile Methodology.
- Worked in all the modules of the application which involved front-end presentation logic developed using Spring MVC, Tiles, JSP, JSTL and JavaScript, Business objects developed using POJOs and data access layer using Hibernate framework.
- Created and injected Spring services, Spring controllers and DAOs to achieve dependency injection.
- Used DAO pattern to fetch data from database using Hibernate to carry out various database specific operations and avoided redundant database access statements and thus achieved decoupling and flexibility.
- Involved in configuring Hibernate mapping files and POJO objects.
- Defined MultiAction, AbstractWizardForm and SimpleForm Controllers using Spring MVC framework providing very clean division between controllers, flexibility with the use of interfaces and providing thin web layer over business layer.
- Used Apache POI API to carry out Microsoft Excel upload functions.
- Developed various generic JavaScript functions used for validations.
- Developed screens using JSP/JSF, JavaScript, AJAX and Ext JS.
- Developed entire user interface using various Ext JS components like Form panels, Tab panels, View port and Editable grids.
- Used XStream API to transfer data back and forth between Spring MVC and Ext JS.
- Developed JSON tree structures using Ext JS Tree API providing drag and drop elements.
- Used AJAX extensively to implement front end /user interface features in the application.
- Implemented SOA to develop Web services using Apache Axis.
- Developed Web Services clients to consume those Web Services as well other enterprise wide Web Services.
- Exposed the Web Services to the client applications by sharing the WSDL’s.
- Created DDL and DML SQL scripts for creation of database objects.
- Created logical and physical data models putting to practice, concepts of normalization and RDBMS.
- Database development required creation of new tables, PL/SQL stored procedures, functions, views, indexes and constraints, triggers and required SQL tuning to reduce the response time in the application.
- Worked closely with QA team and fixed QA bugs as well as production issues with a quick turnaround time.
- Focused on Test Driven Development; thereby creating detailed JUnit tests for every single piece of functionality before actually writing the functionality.
- Some of the system design code for memory and transfer management was also done in C++
- Used Rational Application Developer (RAD) which is based on Eclipse, to develop and debug application code.
- Used Apache Maven for project management and building the application.
- Used Log4j utility to generate run-time logs.
- CVS was used for project management and version management.
- Deployed the application on Weblogic 9.1 application server.
Environment: J2EE, Java 1.5, Spring framework, Spring MVC, Hibernate, JSP 2.0, JSF, Servlets 2.3, JDBC, AJAX, Web services, SOAP, XML, Java Bean, Agile Methodology, Design Patterns, CVS, Apache Maven, JUnit
Confidential, Paramus, NJ
Java Developer
Responsibilities:
- Designed and integrated modules for patient administration, doctor's notes, procedure notes, scheduling appointments, order entry, health maintenance, lab/radiology workflow, document repository, and prescriptions.
- Involved in the development of the forms for patient’s basic info, patient history, billing details, making new appointments, physical examination and insurance details.
- Developed templates, virtual sticky notes and prescription format for the system.
- Participated in the application architecture and workflow with sequence diagrams, class & entity diagrams and use case diagrams using UML.
- Responsible for customer interaction, analysis of the requirements and project modules scheduling.
- Followed Struts framework MVC architecture.
- Design and Implemented interfaces in Health Level Seven (HL7) messaging for Health Information Exchanges.
- Good Experience in developing HL7 Interfaces in clinical health care services and FDA regulation.
- Developed action forms, action classes for the service request
- Developed and maintained the necessary Java components and Java Beans.
- Used Log4J for logging. Perform daily monitoring of log files and resolve issues.
- Multithreading and main queue were used in a synchronized matter to ensure smooth scheduling and interlocking of the multiple functions and tasks
- Aided with application integrations from the teams that were using C# in order to fully translate and integrate our systems into one that would be written in Java
- Used Hibernate which implements the Java Persistence object/relational mapping and persistence management which internally uses Java Persistence API (JPA) as the persistent layer.
- Using Hibernate stored the data in database for some of the modules.
- Configured hibernate.cfg.xml, developed POJO’s and wrote the xml file to map objects to relational database.
- Involved in creating various reusable Helper and Utility classes which are used across all the modules of the application.
- Was involved in designing Systems for some of other modules using C++
- Involved in various types of code reviews, debugging, performance tuning, defect fixing and documentation of the overall system.
- Responsible for unit testing the application using JUnit.
- Involved in product support and maintaining the application after production.
- Written SQL and PL/SQL for implementing database operations.
- Involved in providing support to the end user and demos for application usage.
Environment: Core Java, JSP, Servlets, Struts Framework, Hibernate Framework, Tomcat, Oracle 9i/10g, HL7, Unix Shell Scripts, XSL, XSLT, Eclipse 3.x, MyEclipse, HTML, UML, Java Script, JUnit, JAXP, XML, SQL, PL/SQL, Log4J
Confidential, Houston, TX
J2EE Developer
Responsibilities:
- Involved in Design, Development and Support phases of Software Development Life Cycle (SDLC). Used AGILE methodology and participated in SCRUM meetings
- Worked with the team in the development of Use-Case diagrams and Class diagrams for the business modules
- Involved in analysis of use case design and in Preparation of Unit Test Cases
- Involved in developing stored procedures
- Developing the front end with JSP’s and maintained the session with Session Beans.
- Design and Development of Struts Action classes, DAO (Data Access Objects), Views using Struts custom tags
- Used Struts Framework for the application, DAO, Model Classes, Business Logic and Hibernate mappings /created DAOS mappings in Hibernate
- Implemented MVC Architecture using struts framework for the application
- Used Struts validator framework for validations and configured validator-rules.xml and validation.xml
- Usage of Struts web application framework implementation to build the presentation tier
- Involved in configuring web.xml and struts-config.xml according to struts framework
- Involved O/R Mapping using Hibernate
- Created Reference documents to help developers understand the Framework
- Involved XSD, DTD transforming using XSLT, writing SAX, DOM parsers for XML data and responsible for Unit Testing with Junit
- Worked with QA team for supporting testing and resolved defects
Environment: Tomcat 6, Web Sphere 6.0, Java 1.5, JUnit, Ant XML,, Hibernate 3.0, Core Java