Senior Full-Stack Engineer

Landjourney.ai
Landjourney.ai

Software Engineering

Montreal, QC, Canada

Posted on Sep 2, 2026

SweetTech builds AI-native software for agricultural lending: loan origination, white-labeled servicing portals, automated document collection, and a capital marketplace. We are the only modern fintech delivering software to lenders in the agriculture vertical, and within our first year after launch we signed one of the largest independent lender clients and the largest cooperative client in the nation.

We are a seed-stage company (SOC 2 Type II) with a small, senior engineering team. This role is based in our Montreal office.

What you'll do

This is a genuine full-stack role, and we mean both halves of it. You will own features end to end: the Angular screens a lender actually uses, the FastAPI services behind them, and the data model underneath.

On the backend, you will build and maintain Python/FastAPI services with clean, well-documented APIs, model data with Pydantic and PostgreSQL-compatible SQL, and use Redis for caching and async workloads.

On the frontend, you will build and maintain substantial Angular applications: multi-step loan origination flows, document collection interfaces, and white-labeled portals that our lender clients rebrand as their own.

You will also participate in architecture decisions and code reviews, use AI tools to accelerate coding and testing, and communicate clearly across product, design, and business.

What you bring

7+ years of professional full-stack development, with production experience on both the backend and the frontend of the same product.

Deep Python expertise: FastAPI, Pydantic, async patterns. Strong SQL skills and experience with Redis.

Front-end requirements

We are specific about this because it is the half candidates most often overstate. You should be able to walk us through a non-trivial front-end you personally built and shipped.

Strong production experience in either Angular or React. We genuinely run both: Angular 22 on the lending platform, and React with Next.js and Refine on the Agentic Matching Engine. So we are not asking a React engineer to abandon what they know. Most of this role is Angular and our take-home assignment is in Angular, so you should be willing to work in it. Either way, you should be strong in:

  • TypeScript beyond the basics, including typed API contracts and generics.
  • Reactive patterns and async data flow, and knowing when not to reach for them. In Angular this is RxJS: observables, operators, and subscription management.
  • Forms at real complexity: dynamic and nested forms, cross-field validation, and multi-step wizards that hold state cleanly. In Angular that means reactive forms.
  • Component architecture: reusable, themeable components, smart/presentational separation, and change detection you can reason about.
  • State management, routing and guards, lazy-loaded modules, and front-end testing.
  • An eye for performance and accessibility in data-dense interfaces, and the judgment to build UIs a loan officer can move through quickly.

Other

Fluent English; French is a strong asset. Clear communicator with technical and non-technical audiences. Experience in fintech or other regulated environments is a plus.

Our stack

We run two products. The lending platform is Python and FastAPI with Angular 22 and TypeScript, on CockroachDB and Redis. The Agentic Matching Engine is Next.js 16, React 19 and Refine on a TypeScript services architecture, with CockroachDB and Temporal. Same company, two real codebases, both in production. Developers work in a self-contained local stack plus a cloud workstation, so you spend your time in the product rather than on infrastructure.

The team

Our Montreal office is small and deliberately senior. You will have real ownership over the platform rather than a narrow slice of it, and direct access to the people making product decisions. The wider team is spread across Boulder, Calgary and Montreal, with core collaboration hours overlapping Mountain Time.

We look for strong work ethic, grit, humbleness, humor, and a genuine interest in the people we build for: farmers and the lenders who serve them.

Ingénieur ou ingénieure full-stack senior — version française

À propos de SweetTech

SweetTech développe des logiciels propulsés par l'IA pour le prêt agricole : origination de prêts, portails de gestion en marque blanche, collecte automatisée de documents et place de marché de capitaux. Nous sommes la seule fintech moderne à livrer des logiciels aux prêteurs du secteur agricole, et dès notre première année après le lancement, nous avons signé l'un des plus grands prêteurs indépendants ainsi que la plus grande coopérative de prêt au pays.

Nous sommes une entreprise en phase d'amorçage (SOC 2 Type II) avec une équipe d'ingénierie petite et expérimentée. Ce poste est basé à notre bureau de Montréal.

Ce que vous ferez

Il s'agit d'un véritable rôle full-stack, et nous pensons réellement aux deux moitiés. Vous serez responsable de fonctionnalités de bout en bout : les écrans Angular qu'un prêteur utilise réellement, les services FastAPI derrière eux et le modèle de données en dessous.

Côté backend, vous développerez et maintiendrez des services Python/FastAPI avec des API propres et bien documentées, modéliserez les données avec Pydantic et du SQL compatible PostgreSQL, et utiliserez Redis pour la mise en cache et les charges asynchrones.

Côté frontend, vous développerez et maintiendrez des applications Angular d'envergure : des parcours d'origination de prêt en plusieurs étapes, des interfaces de collecte de documents et des portails en marque blanche que nos clients prêteurs rehabillent à leur image.

Vous participerez aussi aux décisions d'architecture et aux revues de code, utiliserez des outils d'IA pour accélérer le développement et les tests, et communiquerez clairement avec le produit, le design et les équipes d'affaires.

Ce que vous apportez

Plus de 7 ans de développement full-stack professionnel, avec une expérience en production sur le backend et le frontend d'un même produit.

Une expertise Python approfondie : FastAPI, Pydantic, patrons asynchrones. De solides compétences SQL et de l'expérience avec Redis.

Exigences front-end

Nous sommes précis sur ce point, car c'est la moitié que les candidatures surestiment le plus souvent. Vous devriez pouvoir nous présenter en détail un front-end non trivial que vous avez personnellement conçu et livré.

Une solide expérience en production avec Angular ou React. Nous utilisons réellement les deux : Angular 22 sur la plateforme de prêt, et React avec Next.js et Refine sur l'Agentic Matching Engine. Nous ne demandons donc pas à une personne experte de React d'abandonner ce qu'elle connaît. La majeure partie du rôle est en Angular et notre exercice technique est en Angular, alors vous devez être disposé ou disposée à y travailler. Dans tous les cas, vous devriez maîtriser :

  • TypeScript au-delà des bases, y compris les contrats d'API typés et les génériques.
  • Les patrons réactifs et les flux de données asynchrones, et savoir quand ne pas y recourir. En Angular, cela veut dire RxJS : observables, opérateurs et gestion des abonnements.
  • Les formulaires à complexité réelle : formulaires dynamiques et imbriqués, validation inter-champs et assistants en plusieurs étapes qui conservent proprement leur état. En Angular, cela signifie les formulaires réactifs.
  • L'architecture de composants : composants réutilisables et thémables, séparation smart/presentational et une détection de changements que vous pouvez expliquer.
  • La gestion d'état, le routage et les guards, les modules à chargement différé et les tests front-end.
  • Un souci de performance et d'accessibilité dans des interfaces denses en données, et le jugement nécessaire pour bâtir des interfaces qu'un agent de crédit parcourt rapidement.

Autres

Anglais courant; le français est un atout important. Vous communiquez clairement avec des publics techniques et non techniques. Une expérience en fintech ou dans un autre environnement réglementé est un plus.

Notre pile technologique

Nous exploitons deux produits. La plateforme de prêt est en Python et FastAPI avec Angular 22 et TypeScript, sur CockroachDB et Redis. L'Agentic Matching Engine est en Next.js 16, React 19 et Refine sur une architecture de services TypeScript, avec CockroachDB et Temporal. Une même entreprise, deux bases de code réelles, toutes deux en production. Les développeurs travaillent dans un environnement local autonome et sur un poste de travail infonuagique, pour passer leur temps dans le produit plutôt que sur l'infrastructure.

L'équipe

Notre bureau de Montréal est petit et délibérément senior. Vous aurez une réelle responsabilité sur la plateforme plutôt qu'une tranche étroite de celle-ci, et un accès direct aux personnes qui prennent les décisions produit. L'équipe élargie est répartie entre Boulder, Calgary et Montréal, avec des heures de collaboration alignées sur le fuseau des Rocheuses.

Nous recherchons une solide éthique de travail, de la ténacité, de l'humilité, de l'humour et un intérêt sincère pour les gens pour qui nous bâtissons : les agriculteurs et les prêteurs qui les servent.