Software Engineer - Front End

Tucows Inc.
13hRemote

About The Position

In this role, your primary objective will be to architect, develop, and evolve user-facing web applications and reusable UI components with a strong focus on reliability, maintainability, and speed of delivery. You will work across both modern and legacy front-end codebases, improving existing applications and, when needed, migrating them fully to a more robust and modern architecture. You are expected to operate with systems thinking and strong critical reasoning, understanding end-to-end flows (auth, permissions, async workflows, API boundaries, and failure modes), and making sound technical decisions under real-world constraints. You will regularly reverse engineer existing applications to diagnose issues, align implementations with intended behavior, and de-risk migrations. You will work in a spec-driven engineering model, clarifying requirements, producing or refining feature-level specifications (acceptance criteria, edge cases, API contracts), and implementing them with a high bar for quality. You will also contribute to establishing repeatable patterns that allow teams to build features consistently across multiple applications. AI-assisted development is a core part of the workflow. You will use tools such as Claude (and similar LLM-based assistants) to accelerate implementation, refactoring, and discovery, while applying strong engineering discipline: validation of outputs, secure coding practices, thorough testing, and human review. Your goal is to move faster without trading off correctness or maintainability. Collaboration with design, product, and back-end teams is essential to ensure cohesive user experiences and smooth integration with back-end services. You’ll participate in architecture planning, code reviews, and delivery practices that ensure features are shipped safely and predictably, including deployments and post-release follow-up. If you’re deeply passionate about front-end development, enjoy working in complex systems, and thrive modernizing legacy applications at pace, we’re eager to hear from you. This is a remote role open to applicants in Canada.

Requirements

  • Bachelor’s degree in Computer Science, Software Engineering, or equivalent work experience.
  • Minimum of 5 years of experience delivering high-quality software solutions.
  • In-depth understanding of front-end architecture patterns, state management, component-based development, and modern JS frameworks like React.js and Vue.js.
  • Extensive experience in front-end development using HTML5 and CSS3 (Sass/SCSS).
  • Proficiency in implementing responsive and accessible designs, focusing on cross-browser compatibility.
  • Knowledge of performance optimization techniques, such as code splitting, lazy loading, and caching.
  • Experience with build and package management tools like Vite, Webpack, Babel, or npm.
  • Deep understanding of RESTful APIs and experience integrating front-end applications with back-end services.
  • Solid knowledge of software engineering principles, design patterns, and best practices.
  • Experience with version control using Git and agile development methodologies.
  • Comfortable with agile methodologies, JIRA, and other project workflow tools.
  • Build and ship features using a spec-driven approach, turning feature specs into implementation, tests, and measurable outcomes in production.
  • Strong reasoning, problem-solving, and debugging skills, with keen attention to detail.
  • Hands-on experience maintaining and modernizing legacy front-end applications, including safe refactoring, incremental migrations, and production releases.
  • Practical experience using LLM-based tools (e.g., Claude) in an engineering workflow, including validating outputs and maintaining quality through tests and review.
  • Hands-on experience using Figma or a similar tool.
  • Experience working remotely with a distributed team.
  • Good communication skills, both verbal and written.

Responsibilities

  • Develop and ship user-facing features using modern front-end technologies, ensuring they meet user needs and deliver measurable product value.
  • Own work end-to-end, from feature discovery and spec clarification to implementation, testing, release, and production follow-up.
  • Work across legacy and modern applications: Improve and stabilize existing codebases. Plan and execute incremental modernization and full migrations when required.
  • Collaborate with UX/UI designers to translate design concepts into fully functional and interactive components, aligned with our team’s UI standards and design system.
  • Determine and architect the structure of UI components and application patterns, focusing on efficiency, scalability, maintainability, and consistency across products.
  • Build reusable/composable components and patterns that positively impact multiple projects and new products company-wide.
  • Integrate front-end applications with back-end APIs in collaboration with back-end and full-stack developers, ensuring reliable data exchange and correct system behavior.
  • Perform root cause analysis of issues identified in the field (including cross FE/BE boundaries), prevent recurrences, and improve overall system stability.
  • Establish and maintain strong quality gates: Unit and integration testing. E2E testing (e.g., Playwright/Cypress). Visual regression testing where appropriate. CI checks and releases readiness.
  • Participate in code reviews, enforce best practices, and provide constructive feedback to raise quality and consistency across the team.
  • Use AI-assisted tools (e.g., Claude) as part of day-to-day development to accelerate delivery, while ensuring output verification, safe refactoring, and strong testing discipline.
  • Ship and operate front-end changes end-to-end: release, monitor, and follow up on production issues.
  • Deliver safely using feature flags, staged rollouts when applicable, and rollback-ready releases.
  • Build and maintain E2E smoke tests (Playwright) for critical paths, and add visual regression checks when UI fidelity is essential.
  • Use observability tooling (e.g., Sentry) to debug issues in the wild and reduce MTTR.
  • Apply secure FE practices (token handling, XSS/CSRF awareness, dependency hygiene), including when leveraging AI-assisted code.
  • Collaborate with engineering leads, product owners, project managers, and stakeholders to ensure a consistent and predictable product development process.
  • Stay up-to-date with current technologies and protocols for web-based applications, ensuring our product offerings’ continuous improvement and relevance.
  • Guide, support, and mentor engineers when needed, especially around design system usage, modular UI development, and spec-driven delivery.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service