We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age national origin, religion, sexual orientation, gender identity, status as a veteran and basis of disability or any other federal, state or local protected class:
The Platform Services organization is a component of Advance Auto Parts’ Information Technology function. This team is responsible for the creation and evolution of the modern Advance Auto Parts service-based platform. Comprised of key core services including Catalog, Data, Order Management, Inventory, Commerce, Security and more, the platform will provide a structured way to develop and evolve service implementations. Key to this approach is the instantiation of an API-centric developer ecosystem that enables solutions to easily construct consumer-facing applications by accessing these platform services. With a product-centric discipline, the platform enables a framework to evolve back-end services in parallel, ultimately driving faster agility and time-to-market of key features, enabling Advance Auto Part’s Mission of having a “Passion for Customers. Passion for Yes.”
The Senior Software Developer will build new APIs; build integrations to existing systems; build API portals; and assist with the definition of technical tasks, estimates, and dependencies. You will be empowered to innovate—it is expected you will contribute to automation and the refinement of coding standards and processes that will enable product teams to release features on-demand.
Successful candidates will also take pride and ownership of his/her applications, demonstrate a penchant for design, communicate clearly, and have a consistent track record of delivering and supporting scalable, high performance enterprise-level APIs. The implementation around enterprise systems requires strong critical thinking skills and creative engineering with an eye towards customer focus.
ESSENTIAL DUTIES AND RESPONSIBILITIES:
- Work with business stakeholders, project managers, business analysts, and other IT teams to understand the business needs and their requirements.
- Work with a nimble team of software engineers to ensure the solutions meet our business needs using Agile methodologies in a fast-paced environment.
- Ensure technical documentation remains current throughout all phases of the SDLC.
- Consistently cognizant of opportunities for enhancements and process improvements.
- Research, design, define, develop, test, document, and implement new service APIs or changes to existing services. Participate in test planning, development, and execution for integration and system testing.
- Learn new software tools and skills as needed. Keep up with technologies. Provide mentoring to other development staff on technical topics.
- Support and maintain applications utilizing required tools and technologies. Ensure applications are scalable and operate efficiently in the production environment.
- Ability to research issues across multiple key systems and databases. Assist customers and team members on issue resolution and problem solving.
- Comfortable working in an open, dynamic, rapidly changing environment where collaboration is crucial.
The above information on this description has been designed to indicate the general nature and level of work performed by employees within this classification. It is not designed to contain or be interpreted as a comprehensive inventory of all duties, responsibilities and qualifications required of employees assigned to this job.
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Bachelor’s degree in Computer Science or equivalent combination of relevant
- 8+ years of experience in application development (with preference for C#/Java expertise)
- At least 3 years of API development experience
- Strong familiarity with API management and micro-services
- Experience working in an Agile/Scrum environment
- Experience in large scale applications – either public facing web applications or applications with large numbers of concurrent users.
- Technical hands-on experience developing in REST/JSON
- Comfortable implementing continuous integration / continuous delivery process for applications using technologies such as Jenkins and Git.
- Experience creating and consuming REST API services with JSON
- Experience using Unix command line and Bash/Shell/Python scripting to automate tasks, etc.
- Experience with cloud technologies (AWS, Azure, or similar)
- Experience with DevOps technologies such as Docker, Kubernetes, Maven, Ant, etc. desired