About the Opportunity:
As a Principal Fullstack Engineer, you will lead the design and development of complex software solutions, oversee the integration of front-end and back-end technologies, mentor junior engineers, and drive technical innovation, all while ensuring alignment with project goals and organizational standards. You will consult with clients on solutions, develop resilient architectures, and ensure site reliability and observability for production systems.
Requirements:
- Bachelor's or Master's degree in Computer Science, Information Technology, or a related field.
- 7-10+ years of development and architecture experience.
- Strong background in enterprise architecture (processes, data, methodologies, frameworks, security).
- Knowledge of integration patterns, including gateways, message buses, and event-based services (Mulesoft, API Gateway, Kafka, Kinesis, Pub/Sub, etc.).
- Experience with multiple application tech stacks and databases. Preferably, experience with ReactJS on the front end and .NET/RoR/Java/NodeJS on the back end.
- Experience designing and implementing composable, API-first architectures leveraging both SaaS and in-house solutions.
- Experience working with data architectures, including relational and document-based databases (MongoDB, Elastic, Postgres, MySQL, etc.).
- Experience designing appropriate infrastructure architectures in a cloud environment (AWS, GCP, Azure).
- Strong knowledge of authentication methods for services and users (Token authentication, OAuth, OpenID, Okta).
- Excellent communication and interpersonal skills, with the ability to convey complex technical concepts to diverse audiences.
- Experience conducting feasibility studies and cost estimation for IT projects.
- Proven leadership and mentoring capabilities.
- Ability to work collaboratively in a cross-functional team environment.
- Strong problem-solving and analytical skills.
- Preference will be given to candidates located in Toronto/Ontario, Canada, due to proximity for potential in-person meetings and collaboration.
Key Responsibilities:
- Communicate with client product owners and technical staff regarding technical vision and architecture, issues, and proposed solutions at both macro and micro levels.
- Establish and enforce project-specific technical standards that extend the company standards.
- Provide consultation on architectures and solution suites for new custom applications.
- Estimate project difficulty, team composition, and duration for new custom applications.
- Engineer solutions for site reliability.
- Troubleshoot and optimize cloud applications experiencing performance issues.
- Advocate for and lead CI and TDD practices by example.
- Collaborate with the DevOps team to ensure the setup of highly available, cloud-native infrastructure and zero-downtime deployments.
- Participate in Agile ceremonies, including iteration planning, standups, grooming, and retrospectives.
- Pair with and mentor team members who need assistance in solving complex technical problems or adhering to best development practices.
- Coordinate with clients and third parties for technical integrations.
- Suggest tooling and process improvements, staying up to date with industry developments.
- Facilitate collaboration among diverse stakeholders and teams within our cross-functional development process.
- Develop technical solutions that are:
- Cloud-native
- Decoupled and distributed (microservices)
- Reactive and resilient
- Leverage data and data pipelines in meaningful, performant ways.
Apply now or send your resume to be considered for this exciting opportunity!!