Senior Software Engineer (Remote)

O'Reilly Auto Parts

A Senior Software Engineer is a highly skilled software developer with expert knowledge in at least one department or system. They work with a high degree of independence and develop information systems to support the business. Engineers are primarily focused on the design or integration of various software systems, databases, and third-party packages. Essential Job Functions Generally takes leadership role in guiding projects through the complete software development life cycle Typical focus is on code design efforts Solid understanding of secure coding techniques and best practices Responsible (takes ownership) for multiple software applications Manage tasks and resources while utilizing modern project management principles Participate or lead the development of multiple projects at one time Conducts code reviews and ensures coding best practices are being followed 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 Debug and correct complex software defects Develop new or modify existing software using coding best practices Create or update advanced project documentation Test software to validate accuracy of code and high quality software systems Skills and Qualifications 7+ years of Java software development experience 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) Advanced understanding of the software and system(s) supported by their team, as well as the overall company business 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 Advanced understanding of complex computer systems (multiple programs, databases, communications etc) Advanced knowledge of programming, database systems, and systems analysis and design Ability to write advanced technical documentation Advanced problem-solving skills Good verbal and written communications skills Must work well in a team environment, Ability to learn independently Willingness to work flexible schedule including nights/weekends High School diploma or equivalent

View this job on