Description
Butler/Till is a results-driven marketing agency offering deeply collaborative client experiences, proprietary technology, and world-class partnerships. At Butler/Till, we take immense pride in our independent, women-owned and led status, our unwavering commitment to a purpose-driven approach, our B-Corp status, and our unique structure as a 100% employee-owned company (ESOP).
SUMMARY
The Director, Software Engineering is a leadership role responsible for overseeing the software engineering department's overall technical direction and execution. This role involves managing engineering resources, driving strategic technical initiatives, and ensuring the delivery of high-quality software products that align with Butler/Till’s goals. The Director will work closely with cross-functional teams[CM1] [SH2] like product development and data engineering to define project scopes, set priorities, and foster a culture of continuous improvement and innovation. The ideal candidate excels in strategic planning, team leadership, and technical acumen, thriving in dynamic and collaborative environments.
The tech stack includes HTML5/CSS, Node.js, React, TypeScript, C#, Python, JavaScript, Docker, AWS, and Azure Services, supported by MS-SQL, PostgreSQL, and Snowflake databases.
KEY OUTCOMES & RESPONSIBILITIES
Key Outcome: Effective leadership and team management
Key Responsibilities:
- Lead, mentor, and manage engineering teams, including recruiting, performance evaluations, and professional development.
- Develop and implement engineering strategies that support the company’s business objectives and technology vision.
- Foster a collaborative and innovative team environment, encouraging knowledge sharing and continuous learning.
- Oversee project planning, including defining technical requirements, setting timelines, and ensuring alignment with business goals.
- Ensure effective communication and collaboration across teams, including with product management, design, and operations.
Key Outcome: High-quality software delivery
Key Responsibilities:
- Oversee the technical design and architecture of software systems, ensuring they meet performance, scalability, and security standards.
- Implement best practices for software development, including coding standards, code reviews, and quality assurance processes.
- Drive the adoption of modern technologies and methodologies to enhance software development and operational efficiency.
- Monitor and manage engineering project progress, ensuring timely delivery of high-quality software solutions.
- Conduct regular reviews and assessments of technology and processes to identify areas for improvement.
Key Outcome: Strategic technical leadership
Key Responsibilities:
- Define and drive the technology roadmap in alignment with the company’s strategic objectives.
- Evaluate emerging technologies and industry trends, making recommendations for their adoption to enhance the company’s competitive edge.
- Collaborate with senior leadership to align engineering strategies with overall business goals and priorities.
- Represent the engineering department in executive meetings, providing updates on project status, risks, and achievements.
Key Outcome: Engage, retain, and enable performance of talent
Key Responsibilities:
- Contribute and proactively manage talent plans. Assess, hire, on-board, and grow role-appropriate talent
- Manage a team; set clear, outcome-based performance goals. Establish and maintain development plans for each.
- Provide effective feedback that enables employees to improve and work toward goals, while seeking feedback from team to enable inclusion and continuous improvement
- Remove barriers to enable team outcomes
- Provide opportunities for growth and development, while mentoring and inspiring employees to unlock their full potential
Other Responsibilities:
- Lead initiatives for process improvements and optimization within the engineering department.
- Develop and maintain documentation for technical processes, architecture, and project status.
- Support cross-functional projects and initiatives as needed, including leading or contributing to strategic planning sessions.
Requirements
REQUIRED
- Bachelor’s degree in Computer Science, Engineering, or a related discipline, or equivalent combination of education and experience.
- 10+ years of experience in software engineering, with at least 5 years in a leadership role managing engineering teams.
- Proven experience in defining and executing technical strategies and driving software development initiatives.
- Strong expertise in one or more programming languages and frameworks (C#, Python, Java).
- Extensive experience with software development best practices, including architecture, design, testing, and deployment.
- Demonstrated ability to manage complex projects and lead cross-functional teams.
- Excellent problem-solving skills and attention to detail.
- Strong communication and interpersonal skills, with the ability to influence and collaborate effectively with senior leadership and other stakeholders.
PREFERRED
- Experience leading engineering teams in a SaaS or tech-driven environment.
- Proven track record of successfully launching and scaling technology products.
- Experience with cloud platforms and services (AWS, Azure).
- Background in modernizing legacy systems and implementing scalable solutions.
CORE COMPETENCIES
- CUSTOMER FOCUS/CLIENT INTIMACY: seeking to understand client business challenges/needs and delivering continuous value to our clients
- COLLABORATIVE: working with teams and across the organization with ease
- OWNER AGILITY: able to continuously learn and quickly adapt to changing circumstance
- RESULTS DRIVEN: accepts accountability to deliver business outcomes, even under changing circumstances. Delivers on commitments
- DISCIPLINED: Thinks, plans, and prioritizes work on an ongoing basis, plans and aligns with key team members before acting