Who We Are
DiFacto is a Danish B2B SaaS startup that saves construction companies money — automatically. Our platform compares supplier invoices against pre-negotiated price agreements using AI and flags every pricing error that would otherwise go unnoticed. We're talking real money: pilot data from over 15,000 invoices shows that more than 10% contain errors, and companies lose 1–1.5% of their entire procurement volume to mistakes nobody catches.
We launched on April 1st, 2026. We have paying customers, a working product, and a clear technical architecture. Now we need the person who will own the code.
We are three co-founders based at Incuba Katrinebjerg in Aarhus. Jeppe Østerby (CEO) leads sales and customer relationships with deep knowledge of the construction industry. Another member (COO) handles data analysis, customer insights, and operations. Ivan Grant Petrus (CTO) built the technical foundation, architecture, and development processes. Together, we've bootstrapped DiFacto from an idea into a product that real companies depend on.
We're backed by Incuba Katrinebjerg, Beyond Beta (accelerator), Nvidia Inception (AI startup programme), Dansk Industri, and NextStep — and we're actively preparing for investor conversations in Q3 2026.
Why This Role Exists
Let's be transparent, because that's how we operate.
Until now, our platform has been built by an external development team. It worked — but development is the core of what we do, and we've reached the point where it has to move in-house. That's not optional; it's the most important thing we can do right now.
At the same time, our current CTO (Ivan) is transitioning out of the day-to-day role. He built the architecture, the processes, the documentation, and the development infrastructure. He's not disappearing — he'll remain involved strategically — but the hands-on technical leadership needs to transfer to someone who can own it fully and grow with the company.
That's what this role is. You won't just be writing code. You'll be inheriting a real system, with real customers, and stepping into a position where you shape the technical future of DiFacto. If you prove yourself — and we believe the right person will — this is a path to CTO.
We're not hiding behind corporate language here. This is an early-stage startup. There's a lot to do, the stakes are real, and the opportunity is proportional.
What You'll Actually Do
You'll work across our entire stack:
· Frontend: SvelteKit · Backend: Node.js (Express) and Python · Database: MongoDB · AI/OCR Pipeline: Google Vertex AI / Gemini (with LLM abstraction layer for provider flexibility) · Infrastructure: AWS (Stockholm region), Docker, Redis, Nginx, CrowdSec · CI/CD: Bitbucket Pipelines · Payments: Stripe
Your work will span both building and leading:
· Taking ownership of the existing codebase and improving it — architecture, reliability, performance · Building new features: API integrations (Visma, ERP systems), email automation, cloud file uploads, customer-facing reports · Working on the AI pipeline — evaluating and benchmarking LLM models, improving invoice parsing accuracy, optimizing processing speed · DevOps and infrastructure: MongoDB redundancy, Redis high availability, monitoring, security hardening · Making technical decisions with real consequences — you'll sit with the founders and influence product direction · Mentoring a development intern who is already onboarded and working alongside you · Leveraging AI-assisted development tools (vibe coding) alongside traditional engineering to ship faster — we believe the best developers know when to use AI to accelerate and when to write by hand, and we want someone who's fluent in both
We have a documented backlog, a complete backend architecture mapping, and a structured 3-month execution plan. You won't be guessing what to do — but you will be expected to challenge priorities and shape what comes next.
What We Offer (Honestly)
We believe in being upfront. Here's the full picture:
Equity: We're offering an equity incentive programme starting negotiated % and scaling up a negotiated % based on tenure and contribution, vesting over a 1–3 year period. This is real ownership in a company with paying customers, a working product, and a clear path to revenue growth.
Salary: To be completely transparent — this role starts without a salary. We're a bootstrapped startup, and we don't yet have the liquidity to offer one. Our plan is to introduce salary when we close our seed round, or within 6–12 months. We know that's a lot to ask, and we respect that this setup isn't for everyone. But for the right person — someone who wants to build something from the ground up and own a real piece of it — this is the kind of opportunity that doesn't come along often.
What else you get:
· A mandate that matters. You'll have both strategic and operational responsibility. You'll sit with the founders, influence decisions, and see the direct impact of your work on a live product. · A thorough handover. The current CTO has built comprehensive architecture documentation, system mappings, and handover materials specifically for this transition. You won't be starting from zero. · A proper workspace. Dedicated desk at Incuba Katrinebjerg — a modern co-working space with monitors, fitness centre, cafeteria, community events, and a vibrant ecosystem of startups and tech companies. · A path to CTO. This isn't a vague promise. The current CTO's transition plan is written, the handover is structured, and the role is explicitly designed for someone to grow into technical leadership. · A front-row seat to building a company. Fundraising conversations, customer meetings, strategic planning, product decisions — the full reality of early-stage startup life.
Who We're Looking For
This is a senior role. We're looking for someone who has built and maintained production systems, not just experimented with them.
Technical: · Strong experience with JavaScript/TypeScript and Python · Solid backend skills: Node.js, REST APIs, database design (MongoDB or similar NoSQL) · Experience with cloud infrastructure (AWS preferred), Docker, and CI/CD pipelines · Familiarity with or strong interest in AI/ML pipelines, LLMs, and data processing · Experience with SvelteKit, Redis, Stripe, or security tooling is a significant plus · Comfortable blending AI-assisted coding (Claude, Cursor, Copilot, or similar) with traditional development — we value speed and pragmatism, and we see vibe coding as a genuine multiplier when paired with solid engineering judgment
Personal: · You take ownership. You don't wait to be told what to do — you see what needs to happen and you make it happen. · You communicate directly. We separate personality from the problem and focus on solutions. The best argument wins, not the loudest voice. · You're comfortable with ambiguity. Priorities shift. Requirements evolve. You handle it. · You care about the craft. You write code that's meant to last, not just compile. · You're motivated by building something from scratch rather than maintaining something that already works.
The Practical Details
Start date: As soon as possible, ideally before June 2026 — we're flexible on exact timing, but earlier is better. Location: Incuba Katrinebjerg, Aarhus. This is an on-site role. Being physically present matters for collaboration, handover, and culture. Compensation: Equity incentive programme (negotiated %, vesting over 1–3 years). Salary planned from seed round or within 6–12 months. Contract: Full-time. A formal equity agreement will be drafted before you start.
This job comes with several perks and benefits
