Java Software Architect

O'Reilly Auto Parts

A software architect guides the technical design and direction of enterprise-level software solutions.  Software architects are required to have advanced technical knowledge in all areas of software development, analysis, and design. They posses detailed expert knowledge of existing software architecture design and interconnectivity with upstream and downstream systems.


  • Works with Software Engineers, Database Analysts and Systems Architects to design and create, dependable, scalable, and maintainable systems
  • Develops standards and technical documentation for existing theoretical design of software systems
  • Ability to lead and teach others complex technical designs, demonstrating new ideas from proof of concept to step by step how to instructions
  • Takes lead role on designing and approving designs of new software or software integrations with 3rd party packages
  • Begins to participates in the discussion surrounding the long-term technical direction of the department
  • Mentor software engineers that aspire to become software architects
  • Ensures designs are implemented correctly and developers follow standards outlined in the software development methodology
  • Stays current with new and emerging coding techniques and standards, programming languages, and technology in general as it relates to the needs of the company
  • Works with software engineers and management to help shape coding standards and software development life cycle best practices.
  • Takes leadership role in guiding projects through the complete software development life cycle
  • Responsible (takes ownership) for multiple software applications
  • Manage tasks and resources while utilizing modern project management principles
  • Leads the development of multiple projects at one time
  • Recommend software improvements and changes to systems, as needed
  • May approve software to be deployed to production systems
  • Perform software and data analysis to uncover issues and solve complicated problems that typically span multiple systems
  • Lead various meetings to gather software requirements and project details
  • Conduct software demo’s to educate and train others in the use of software


  • 10+ years of software development experience in an area applicable to O’Reilly (retail, java, supply chain)
  • Complete understanding of the department and or system(s) they are responsible for, as well as the overall business process of O’Reilly Auto Parts
  • Understands how to establish the value and cost of an IT project
  • Advanced understanding of change management and the O’Reilly change control process and procedures
  • Advanced knowledge of Project Development Life Cycle (PDLC) and Software Development Life Cycle (SDLC)
  • Ability to lead and get results from others
  • Ability to articulate advanced technical concepts and teach others
  • Ability to effectively multitask
  • Expert software debugging and testing knowledge
  • Expert knowledge of complex computer systems (multiple programs, databases, communications etc)