Job Description :
The Developer is responsible for leading the design, development, testing, debugging, maintaining and documenting software components for Scan, Bag, GO to which they are assigned.
The Developer will be involved in the technical design process and completes estimates and work plans for design, development, implementation, and rollout tasks.
The Developer also communicates with the appropriate teams to ensure that assignments are delivered with the highest of quality and in accordance to standards.
The Developer strives to continuously improve the software delivery processes and practices. Role model and demonstrate the company’s core values of respect, honesty, integrity, diversity, inclusion and safety of others.

Current tools and technologies include:

- Spring Boot

- Pivotal Cloud Foundry

- Enterprise messaging pattern experience a plus: MQTT or AMQP

- Object Oriented Design

- Git is required

- Java 8+

- TeamCity or other CI/CD pipeline

- Docker is a plus

- Kotlin is a plus

- PaaS infrastructure is a plus

- SQL, Struts, Hibernate, JPA, Spring, Acegi Security, JBoss, DB2, Informix, Linux, Eclipse, Ant, Maven, JDBC, JUnit, Javascript, HTML, Angular

Essential Job Functions:

Lead and participate in the design and implementation of large and/or architecturally significant applications.
Champion company standards and best practices. Work to continuously improve software delivery processes and practices.
Build partnerships across the application, business and infrastructure teams.
Develop programming specifications. Design, code and unit test application code using Software Development Life Cycle (SDLC) best practices.
Complete estimates and work plans independently as appropriate for design, development, implementation and rollout tasks.
Create technical system documentation and ensure that this documentation remains current throughout all phases of the SDLC.
Participate in all phases of system testing.
Communicate with the appropriate teams to ensure that assignments are managed appropriately and that completed assignments are of the highest quality.
Must be able to perform the essential functions of this position with or without reasonable accommodation.

The ideal candidate needs to possess:

Proven success developing Java Features associated with large scale projects
7 or more years of experience in systems analysis, design or programming and the associated development methodologies.
5 years minimum experience in core Java technologies
5 years minimum experience in Object Oriented Design / Architecture
A solid understanding and appreciation for SDLC tools, processes, and methodology
Ability to interact well in a team environment.
A solid understanding and appreciation for SDLC tools, processes, and methodology.
BS in Computer Science or equivalent experience.