Enable Logo

Enable

Principal Software Developer

🌎

Toronto, ON

2w ago
πŸ‘€ 16 views
πŸ“₯ 0 clicked apply

Job Description

At Enable, we are transforming the supply chain with our cutting-edge rebate management software. We see rebates as a strategic advantage, strengthening partnerships, driving smarter decisions, and unlocking significant value across the entire supply chain – from manufacturers to consumers.

After securing $276M in Series A-D funding, we are positioned for continued, significant growth. Since the launch of our flagship product in 2016, we have been rapidly scaling our client base, product offerings, and built a team of top-tier talent committed to reshaping the industry.

Want a glimpse into life at Enable? Visit our Life at Enable page to learn how you can be part of our journey.

Job Summary

As a Principal Software Engineer – Architecture at Enable, you will define and drive the technical direction of our platform at an organizational level. You will serve as one of the core architects for complex, large-scale systems, ensuring the integrity, scalability, and maintainability of our platform. This role involves collaborating across teams to address high-level design challenges, setting architectural standards, and ensuring technical excellence across the engineering organization.

Key Responsibilities

Technical Leadership:
- Define and own the overarching architecture for the Enable platform, ensuring alignment with business goals and technical requirements.
- Set technical standards, establish best practices, and lead the adoption of architectural principles across teams.
- Act as the top technical authority for resolving architectural and design challenges.

Strategic Planning:
- Drive the technology roadmap for the platform, incorporating scalability, security, and performance as core priorities.
- Identify future trends and technologies, positioning Enable for long-term success.
- Partner with senior leadership to translate business objectives into an actionable technical vision.

System Design and Architecture:
- Lead the design of distributed systems and cloud-native architectures, ensuring resiliency, security, fault-tolerance, and efficiency.
- Architect solutions to handle complex data processing and storage requirements, focusing on high availability and low latency.
- Oversee the decomposition of monolithic systems into modular, service-oriented architectures where appropriate.

Cross-Team Collaboration:
- Collaborate with product management, engineering teams, and other stakeholders to define and refine architectural designs.
- Guide cross-functional teams through complex technical projects, ensuring smooth implementation.
- Serve as a mentor and resource for engineers at all levels, fostering technical excellence across the organization.

Innovation and Optimization:
- Evaluate and implement cutting-edge technologies to enhance platform capabilities and efficiency.
- Proactively identify areas of technical debt or inefficiencies, driving initiatives for improvement.
- Champion automation, continuous integration/continuous delivery (CI/CD), and DevOps best practices.

Governance and Quality Assurance:
- Ensure architectural compliance with industry standards, regulations, and security best practices.
- Conduct rigorous architectural reviews and audits to maintain high-quality outcomes.
- Establish metrics and monitoring systems to track architectural health and performance.