Lead Software Engineer
Careers at Little Caesars - Detroit, MI
Apply NowJob Description
Build a Bigger, Better, Bolder Future: Imagine working for a company that measures its success based off the growth of its colleagues, a company that invests in its future by investing in you. Little Caesars is a company where our colleagues make an impact. Your Mission: You work on a team building and maintaining the custom software which runs Little Caesars. Whether remote or on site, you will be part of all aspects of the Software Development Lifecycle including technical design, development, testing and support. Share your expertise in multiple areas of software development technology. Lead initiatives and provide direction to less experienced software engineers on your team and influence and impact initiatives outside your immediate team. This position may support LCE or other Ilitch companies. What You'll Do: Participate in the design, development, and support of technical projects through to completion according to project and corporate standards and methodologies. Responsible for the individual delivery of large, complex system components. Act as the lead technologist on Medium-sized projects (up to 52 FTE weeks) being responsible for technical quality, on-time delivery and performance of other technical resources on the project. Write code that captures the essential nature of the solution and is appropriately flexible, reusable, efficient, and adaptable to changing requirements. Consider broader architectural concerns when designing and developing code: scalability, maintainability, securability, reliability, extensibility, etc. Ability to quickly debug cross-module issues and intuit where bugs might lie due to deep knowledge of the libraries, platforms, and systems. Maintain strong awareness of the ecosystem of tools and libraries supporting your primary programming language and development environments. Independently design and develop software components in business-critical, complex scenarios, with simplicity and maintenance as key considerations. Identify when it is appropriate to make significant refactors. Independently identify the right solutions to solve complex ambiguous, open-ended problems. Define unit-testing strategies and implement and maintain unit tests. Lead aspects of agile software development including sprint-planning, story review and demos. Mentor more junior developers on estimation skills. Provide technology guidance to less experienced colleagues while completing development assignments. Support and provide guidance to Quality Assurance (QA) in the development of integration test plans, test conditions, expected test results, and automated testing. Mentor others in driving the process of developing technical user stories and ensure quality ACs on stories. Work with SCRUM team to assure that stories are clear and understood. Act as a role-model to the team of resolving issues with urgency and proactively identifying areas for improvement. Lead discussion and trouble-shooting during support incidents on a rotational basis. Develop and maintain support documentation. Lead research and identification of root causes for system issues. Participate in technical aspects of system evaluation and vendor selection processes. Lead research and proof-of-concepts of new technologies. Present findings to senior technologists in the organization. Function as a SME in at least one area of technology. Provide mentorship and guidance to other colleagues in this area. Mentor others and implement best practices on technical tasks which support the overall software development team. Lead the design and architecture of medium-sized software projects. Ensure team develops excellent quality solutions with a focus on stability, scalability, security, and maintainability. Proactively identify issues and technical dependencies that are owned by other teams and propose solutions/mitigations. You may manage a team of more junior developers who will report directly to you. Contribute to the technology plans in your area of expertise. Provide input on direction and evolution of solutions. Who You Are: Bachelor's degree in Computer Science or related field. Equivalent experience may be considered in lieu of a formal education. Minimum of seven (7) years of programming experience in a professional environment. Strong analytical skills and abilities to develop solutions and alternatives that meet business goals. Maintains strong relationships across your organization and regularly collaborates with other IT staff and business units. Effective verbal and written communication skills. Ability to communicate technical information to a wide variety of technical and non-technical clients. Self-motivated, curious, and creative in approach to technology. Deep, substantial expertise in the technologies required for the role. Strong expertise with one or more programming paradigms such as Object Oriented Programming (OOP), functional programming, or dependency injection. Strong expertise using source control technologies such as GIT. Ability to develop instrumentation strategies for software components to allow monitoring and troubleshooting. What Will Make You Standout: Experience developing and deploying code in one or more cloud environments. Experience defining API contracts using OpenAPI Spec and tools. Where You'll Work: This position requires on-call responsibilities requiring work during nights, weekends, or holidays. Works in a normal office environment. Some travel including travel to restaurant locations and trade shows. #J-18808-Ljbffr
Created: 2025-03-01