The role is a senior software engineering position based in Bentonville, Arkansas, at 811 Excellence Dr.
The posting does not separate must-haves from nice-to-haves beyond the stated skills list, so all listed skills are presented as requirements.
Responsibilities
Look at existing products and solutions to find ones that could meet business or technical needs, and identify the gaps, updates or changes needed against what customers and the business expect, including per iteration when working in agile.
Sort requirements into types such as functional and non-functional, derived, imposed and emergent.
Spot risks and issues during requirements gathering, tell the relevant stakeholders, and recommend corrective steps.
Help write user stories for components, applications and complex features in agile teams.
Help design solutions so that processes and applications work together for specific product components or modules, weighing trade-offs against business requirements.
Help turn high-level designs into detailed designs with mock screens, pseudo code and detailed functional logic for specific modules.
Build and configure lean code for whole components and applications, making sure they meet business, technical and non-functional needs, with low maintenance effort, high availability and high scalability.
Help choose suitable languages such as JavaScript, Python or C, plus development standards and tools for coding and configuration.
Learn the basics of new languages and frameworks that will be useful for future work.
Write scripts that automate repetitive and routine work in CI/CD, testing and other processes where it makes sense.
Add telemetry features as needed, working independently.
Make sure security policy requirements are applied to components and applications during development and configuration.
Map customer requirements to test objectives, then write test cases for components and modules.
Run test cases to find errors and defects across the whole component, and carry out different kinds of testing with suitable tools.
Track and analyse defects in components and modules, and run regression testing after every code change to fix them everywhere they occur.
Review defects from past projects to prevent similar ones from coming back.
Diagnose performance and availability bottlenecks in applications.
Carry out complex maintenance on applications independently.
Monitor application performance by tracking and analysing the right metrics, and perform corrective, adaptive and perfective maintenance along with re-engineering.
Analyse application logs, maintenance data and performance data, and report your findings.
Assess change requests to decide which are valid and feasible.
Make sure the project keeps to approved milestones and timelines.
Requirements
Minimum education: a Master's degree or equivalent in Computer Science, Computer Engineering, Computer Information Systems, Software Engineering or a related field, plus 1 year of experience in software engineering or related work.
Or a Bachelor's degree or equivalent in one of those fields, plus 3 years of experience in software engineering or related work.
Experience designing and building RESTful APIs for front-end use in web and mobile applications.
Experience building and deploying Jenkins jobs for JavaBean and multi-Maven projects to ECS containers and bare-metal servers.
Experience building LDAP authentication and single sign-on for Spring Boot projects, and moving Spring Boot projects to the latest versions.
Experience moving stateless applications from bare-metal servers and ECS containers to EKS, and setting up and provisioning infrastructure that scales with user traffic.
Experience managing build artifacts with the ECR registry so the right artifact version is deployed to web servers.
Experience using the ECS container service with Docker container scripts to publish artifact builds.
Experience writing shell scripts to automate certificate installation on web servers, disaster recovery tasks and recurring operational issues such as hung JVM threads caused by long-running database transactions.
Experience writing YAML scripts that supply application configuration for Docker builds deployed to ECS, including Jenkins build and deployer scripts.
Experience with Java 6, 8 and 11, plus Spring and Spring Boot, building enterprise applications for internal and external use.
Experience containerising web applications with Docker for deployment on standalone servers and ECS.
Experience creating relational database schemas and using Hibernate for object-oriented data models in Spring Boot applications.
Experience with orchestration platforms such as Concord and OneOps.
The employer will accept any amount of experience with these skills.
Conditions
Pay is $90,000.00 to 180,000.00 per year.
Performance incentives are paid annually or quarterly.
The company is an equal opportunity employer.
The company runs a drug-free workplace with zero tolerance for illegal drugs and alcohol on the job.
Benefits
Competitive pay with performance-based incentive awards.
Medical, vision and dental health coverage.
401(k), stock purchase and company-paid life insurance.
PTO including sick leave, parental leave, family care leave, bereavement, jury duty and voting time.
Short-term and long-term disability cover.
Education assistance with 100% company-paid college degrees.
Company discounts, military service pay and adoption expense reimbursement.
Some benefits depend on job classification and length of employment, and are subject to change and plan terms. Details are on the company benefits site.