Senior Java Developer
BALIN TECHNOLOGIES LLC · Westchester County, NY · 3 days ago
EngineeringFull-time
About the Role
The Senior Java Software Engineer will create AWS cloud services and components for critical business systems at AutoNation. The role requires writing high-quality code using commonly available Java frameworks and relevant AWS cloud components, with deep technical knowledge of high-volume and highly transactional systems.
Organizational Relationships
- Works directly with the technical application architect.
- Works as part of a Scrum team, interacting primarily with Business Analysts, Developers, QA testers, and Project Managers.
- Interacts with IT Support Teams: DevOps, DBA, Security, Architecture, Infrastructure, and PMO.
- May interact with IT Leadership: Managers, Directors, Senior Directors.
- May interact with Business Leadership: Managers, Directors, Senior Directors.
Responsibilities
- Collaborate with business stakeholders, business analysts, the technical application architect, and other developers to design and implement high-quality code components that meet or exceed business requirements.
- Generate design or specification documents, including architectural, workflow, or sequence diagrams that accurately capture end-user requirements while adhering to coding and software architecture best practices.
- Analyze and evaluate technical dependencies on related internal or external systems to determine the best implementation possible within time and resource constraints.
- Perform cost-benefit analysis of available implementation alternatives to maximize short-term productivity and long-term maintainability without sacrificing critical application requirements.
- Create detailed timeline and duration estimates for the work effort required.
- Present a detailed overview of the solution approach to technical leadership or business stakeholders as appropriate.
- Implement efficient and reliable software components and services.
- Conduct unit and performance tests to ensure quality deliverables.
- Support the QA team on automation and other scripting requirements.
- Assist in the deployment of releases and troubleshooting of defects across environments.
- Create consistent and accurate technical and end-user documentation of implemented applications.
- Mentor less experienced team members in sound development techniques and optimal design of software solutions.
- Demonstrate behaviors consistent with the Company’s Vision, Mission, and Values in all interactions with customers, co-workers, and suppliers.
- Adhere to all company policies, procedures, and safety standards.
Requirements
- Undergraduate degree in computer science, engineering, or similar field (or equivalent practical experience).
- Minimum 5 years of experience developing mission-critical, high-volume transactional systems in a hybrid (on-prem + cloud) environment.
- Extensive experience with the Java programming language.
- Extensive experience with core Java frameworks such as Spring Boot or Spring MVC.
- Extensive experience with Java development IDEs such as IntelliJ or Eclipse.
- Strong familiarity with Apache Maven.
- Extensive experience with Git source control.
- Extensive experience developing and integrating with REST/SOAP web services.
- Strong familiarity with relational database technologies such as SQL Server or MySQL.
- Familiarity with common AWS services and components such as SQS, SNS, Lambda functions, etc.
- Understanding of end-to-end design/development/delivery of software applications with consistently high quality and reliability.
- Experience with Scrum-based development methodology.
- Strong application performance tuning and optimization skills.
- Strong problem-solving, debugging skills, and dedication to quality.
- Commitment to work assiduously in a fast-paced environment with minimal supervision.
- Commitment to take ownership of defects and blockers and work conscientiously to resolve them.
- Commitment to communicate problems as soon as they arise and follow up on open items until resolved.
Preferred Qualifications
- Experience with retail industries that have a distributed presence such as automotive retailers, hospitality, or banking.
- Experience with SOA-based systems.
- Experience building systems that manage customer-centric data along with case management workflows.