Start with an idea. Or bring what you already have.
I build products with founders from the ground floor, improve
existing systems, and put the people, infrastructure and AI-assisted
development process in place to keep building.
Three ways to start, with technical ownership across the whole
product lifecycle. An engagement can move between all three.
01
BuildStart from the ground
floor.
You bring the idea and domain knowledge. I work with you to turn
it into a real product, from the first technical decisions to
production.
Product planning, architecture, hands-on development, cloud
infrastructure, CI/CD and integrations. I can assemble the team
and lead the work through launch and beyond.
02
ImproveBring the system you
already have.
I get inside the product, codebase, infrastructure and team,
identify what is holding you back, and work with you to improve
it.
Architecture, reliability, security, performance, technical
debt, delivery process and team structure. Stabilise what is
fragile; modernise or rewrite where the evidence justifies it.
03
EnableBuild your AI-assisted
engineering capability.
Work directly with AI agents, bring your existing developers, or
build a team with my help. I set up the development environment
around you and provide the technical direction.
Repositories, permissions, environments, CI/CD, agent workflows,
testing and review gates. You can direct implementation through
agents such as Codex, with engineering discipline and human
control around the work.
Technical direction. Hands-on delivery.
I can act as your fractional CTO, recruit and lead developers, or
work directly in the code. I also integrate AI into products and
internal workflows where it is useful. The aim is a product, a team
and an engineering system capable of continuing to build.
Where you are now
The engagement can begin almost anywhere.
01
You have an idea and need someone to build it with you.
02
You have a prototype and need a reliable production system.
03
Your product is struggling, and you need to understand why and
improve it.
04
You have developers but need technical direction and someone to
own the whole picture.
05
You want to build with AI and need an engineering system you can
trust.
06
You need to assemble a team and give it the foundations to keep
delivering.
Ways to work together
Start with a week. Continue as needed.
01 / Get started
An intensive first week.
For a new product, we turn the idea into an executable technical
plan and establish the foundations. For an existing product, I get
to know the codebase, infrastructure, business and team, and
prioritise what needs changing. Onboarding normally takes about a
week.
02 / Keep building
A retainer that fits.
After onboarding, I stay involved on a retainer at the level you
need: periodic technical direction, hands-on product development,
or ongoing engineering leadership. We agree the scope and time
commitment around the work.
03 / Standard rate
€1,000per day
One rate for technical leadership and hands-on delivery. I work
remotely with companies internationally and can join you on site
as needed, by arrangement.
Start with one important decision.
Focused technical review · €1,000 · One day.
Bring a defined question about your product, architecture or
delivery. We agree the scope, I review the relevant material and
work through the decision with you, and you receive a written
recommendation with priorities and next steps. Preparation,
discussion and write-up fit within one day of work.
For a compelling long-term opportunity, I can exchange part of my
cash rate for equity.
10% reduction in cash rate = 1% equity.
This is a starting framework, subject to an agreed cap and the
company, stage and opportunity. We agree the scope, duration and
equity terms for the engagement.
I can also help set up cloud, billing and operational services, with
your company retaining ownership of the critical accounts.
Selected work
Products. Teams. The way they work.
A few examples from more than two decades of professional and
personal projects. Product engineering, team leadership and
day-to-day operations, often within the same engagement. Client and
unpublished project details are anonymised where appropriate.
01 Anonymised · SaaS · Build + improve + enable
Building the product and the team.
Situation
A company turning its domain expertise into software needed
its first product, a development team and a way to manage
delivery.
Úlfur’s responsibility
Design and build the platform, assemble and lead the
contractor team, and guide the company through its first
software development cycle. Take sole responsibility for
DevOps while leading development.
Important decisions
Develop the people and the process alongside the product:
mentor a domain specialist into project management, and
continually integrate and refine AI-assisted development as
the tools and working practices evolve.
Delivered
Self-service onboarding, subscriptions and billing, data
collection, third-party integrations, reporting, AI-assisted
analysis, web and mobile delivery, and AWS production
operation.
Operational state
In production on AWS, with a team of three contract developers
and ongoing technical leadership, development and operations.
02 Anonymised · Professional network · Build
A private network, built from the ground up.
Situation
An invitation-only professional community needed a mobile
product shaped around its members and industry.
Úlfur’s responsibility
Co-founder, CTO and sole developer, owning the product’s
technical design, backend, frontend and AWS operations.
Important decisions
Build the mobile experience with Django, Vue and Capacitor,
and take responsibility for the system through deployment and
ongoing maintenance.
Delivered
A live invitation-only network with iOS and Android
applications, backed by an AWS-hosted platform.
Operational state
Launched as an independent venture, with the live product and
its infrastructure under ongoing operation.
03 Anonymised · Unpublished game · Build + enable
An industry veteran’s vision, made playable.
Situation
A veteran games art director and lead concept artist, with
more than two decades in the industry, wanted a technical
partner for an independent game project.
Úlfur’s responsibility
Provide that technical partnership: architecture, hands-on
development, authoring tools, repository and CI setup, and
review of AI-assisted implementation. Work together on game
design, with the artist shaping the visual world and creative
direction.
Important decisions
Build the tools and workflow around the artist’s creative
direction. Use AI to help implement and explore ideas, with
versioned code, automated checks and technical ownership of
review and integration.
Delivered
A playable procedural 2D prototype, authoring tools and an
AI-assisted development workflow.
Operational state
Unpublished and in active development. The prototype is used
to test both the game and the development approach.
04 Robolobo · Project bootstrap · Enable
An AI-assisted route from brief to production.
Situation
Starting a small web project repeatedly meant reconstructing
the repository, architecture, cloud deployment, CI/CD, domain
setup and account-safety decisions before useful work could
reach production.
Úlfur’s responsibility
Design and implement a reusable brief-to-production workflow
combining Codex-assisted implementation with explicit
technical direction, CI checks and deployment controls. Prove
it by using ulfurk.com as its first real consumer.
Important decisions
Use a small static-site archetype with TypeScript CDK, private
S3 and CloudFront Origin Access Control; deploy through GitHub
OIDC; and fail closed unless immutable GitHub and AWS account
identities match the project configuration.
Delivered
Project initialisation, canonical agent instructions,
Codex-assisted development, AWS CDK, GitHub CI/CD, guarded DNS
adoption and production smoke checks.
Operational state
ulfurk.com is live as the first consumer, deployed from a
private personal GitHub repository into the intended personal
AWS account.
These are selected examples from a career spanning games, SaaS,
startups, banking, insurance, travel/search, media/streaming and
government, alongside independent ventures and personal projects.
How I work
A few principles that survive real systems.
01
Understand before prescribing.
Start with the business constraint, the product and the system as
it actually behaves—not the fashionable answer.
02
Make consequential decisions explicit.
Record the trade-offs, the assumptions and what would cause the
decision to change.
03
Let complexity earn its place.
Prefer the simplest architecture that is genuinely sufficient.
Complexity has a permanent operating cost.
04
Ship in useful increments.
Reduce risk by putting coherent, maintainable slices in front of
real users and real operating conditions.
05
Verify against production behaviour.
Architecture diagrams are hypotheses. Logs, failure modes and user
behaviour are evidence.
06
Leave the work easier to operate.
The system should be safer to change, and the engineers should
understand it better, after the engagement.
Current working set
Still close to the code.
The stack is not the service. It is how decisions get tested and
turned into working software.
APIs · Distributed systems · SaaS
· Infrastructure · Production operations
AI integrations · Agent-assisted development
· AI product workflows · Evaluation
Python
since 2004
Django
since 2008
ÚK
About
I started as an engineer and never stopped being one.
I’m Úlfur Kristjánsson. I’ve spent more than two decades building
software through professional engagements, my own ventures and
personal projects. My work has grown from engineering into
architecture, product decisions, infrastructure and building teams.
I build the product and the people and practices around it. That can
mean leading developers, helping a company learn how to deliver
software, or evolving its AI workflow while keeping development and
operations moving. I take responsibility for the technical decisions
and stay close enough to the code to make them work.
I work independently with companies internationally, remotely and on
site by arrangement. Consulting services are provided through
Robolobo OÜ.
An idea to build, a product to improve, or a team that needs
direction. Send a short outline of where things stand, what needs to
change, and your budget and timing. I’ll review the brief and tell you
where I can take responsibility. The email link includes a few
prompts; you can review it before sending.