Title: Fullstack Java Developer
Location: Atlanta, GA
- Develops high-quality well-documented code while adhering to ADP's coding and UI Design Standards.
- Utilizes analysis and design techniques to formulate system scope, objectives, and solutions to business problems.
- Analyzes and solves existing system logic difficulties.
- Designs, codes, and maintains hosted client/server and web applications with a focus on high product availability, optimum performance, and security.
- Develops high-quality well-documented code based on specifications developed in conjunction with application experts from other departments within the organization.
- Performs thorough debugging and unit testing of code before turning it over to Quality Assurance (QA).
- Determines how changes to existing code/functionality will impact existing clients, customer support, training, etc.
- Works with the QA to resolve defects and answer technical questions.
- Provides technical support to the client services organization to determine resolutions/work-arounds for client issues.
- Based off the criticality of an issue this support may require the engineer to work quickly in a stressful situation.
Experience, Skills, Academic
- Bachelor’s degree in Computer Science, Information Systems (or related degree) or equivalent experience.
- 5+ years of experience with full cycle application development (Full SDLC experience: architecture, design, development, continuous delivery, etc.)
- Minimum five years experience developing in Java with recent experience in at least Java 8
- Minimum five years experience with Spring IoC, Spring Boot, and Hibernate
- Minimum five years experience with Web Services (REST or SOAP)
- Strong knowledge of Object-Oriented Development (OOD), design patterns, and refactoring
- Experience with Test-Driven Development (TDD), using JUnit
- Well versed in using an IDE, such as Eclipse, IntelliJ, WebStorm, and Visual Studio Code
- Strong SQL skills
- Ability to read data models and understand database table relationships is required.
- Experience/knowledge with Windows, Linux, and UNIX operating systems.
- Experience with Oracle 11g or higher
- Document-centric data architecture (Mongo DB/NoSQL)
- Distributed Architecture (Transaction Management, Complex Event Processing, Micro Services)
- Experience in an iterative, Agile environment
- Cloud computing services (Amazon AWS)
- Message driven architecture (JMS, SOA, Spring, Kafka)
- Experience with Human Resources, Benefits, or Payroll applications
- Agile Development (includes familiarity with Rally or other task management applications)
- Apache Tomcat
- Experience with integration products, such as Kafka
- Experience with Git
- Experience with Jenkins or another build-management software
- Ability to logically solve problems within the specified time frames.
- Able to complete assignments that are defined in general terms.
- Motivated to direct own work flow in a manner that maximizes results and meets organizational goals and schedules.
- Able to transfer conceptual knowledge from current skill set in order to quickly develop expertise in new products, programming languages, or platforms.
- Generic Skills:
- Team-oriented, open-mindedness to new ideas, and ability to work well with others.
- Competent to work independently after tasks have been assigned.
- Ability to document code changes in language understandable by less technical associates in other departments (training, sales, etc.)
- Willing to develop expertise in other areas.
- Willing to actively participate in-group cross-training by sharing personal areas of expertise with other engineers.
- Provides suggestions on ways to improve products and/or development processes.
- Detail-oriented and aware of schedules. Desire to produce high-quality thorough work.
- Adaptability to changing project and departmental priorities.
- Able to work scheduled hours and overtime when needed.
- Ability to work with remote associates via telephone and email.
- Good communication skills (both verbal and written) are a strong plus.