Skip to content

About us

A team assembled for each project

We do not keep a bench waiting for work to arrive. We have a stable core and a network of specialists we have worked with for years, and we assemble the team each project needs.

Abstract illustration of a network of collaborators around a central node

Background

Where we come from

Fona grew out of fourteen years building production software: eight of them as technical lead at a multi-project consultancy, where the job was choosing the right technology for each client rather than repeating the same one; the most recent ones as an independent engineer and fractional CTO.

A good part of that work did not arrive directly but through other consultancies, agencies and manufacturers that needed a senior engineer inside their own team. It is a model we still offer, and it explains part of our track record: joining a team that already exists, with their brand on the front and their conventions, without setting up a new line of communication.

Along the way there have been booking platforms, corporate data warehouses, ERP integrations, automation work and projects in both the public and private sectors. Also an Executive MBA, which mostly served to explain why many technical decisions that look absurd from the inside make complete sense from the leadership table, and the other way round.

The conclusion of all that is the current model: a light structure, no layers between the person deciding and the person building, and a network of specialists we call on when a project requires it. It is what lets us work with the depth of a large consultancy without its cost or its slowness.

Team

The team

We would rather be transparent about how this works: there is a named core, and a network of trusted specialists who join according to the project.

Joan Cifo

Joan Cifo

Founder and technical director

Software engineer with more than fourteen years of experience, eight of them leading engineering teams across PHP, JavaScript and Python. For the last three, working as a fractional CTO with responsibility for architecture, vendors and technical strategy at leadership level.

Works daily with Laravel, Vue and Nuxt, TypeScript, PostgreSQL and AWS, and uses AI tooling as part of the development workflow rather than as a demonstration. Former lead front-end teacher on an intensive bootcamp, which shows in how technical decisions get explained to non-technical people.

  • Executive MBA — UPC School
  • MSc Computer Science — UOC
  • Computer Engineering — UPC
  • Deep Learning Specialization — DeepLearning.AI

The network of specialists

Collaborators we work with regularly who join the team when a project requires it. We present them by role because who joins depends on the project; if we work together, you meet the actual people before signing anything.

Data engineering

Dimensional modelling, load pipelines and analytical exploitation for data warehouse and dashboard projects.

Infrastructure and DevOps

Deployment automation, containers, observability and cloud architecture for the projects that need it.

Product and interface design

User research, information architecture and interface design for applications people will use every day.

Development reinforcement

Senior back-end and front-end profiles who join under our technical direction when a project needs more execution capacity.

Values

How we like to work

Clarity over polish

We prefer an uncomfortable conversation on time to a beautiful report too late. If something is not going to work, it gets said while it can still be changed.

The smallest solution that solves it

Over-engineering costs as much as a botch job, it just gets paid later. We look for the simplest system that survives the growth you can actually foresee.

Document what was hard to understand

Architecture decisions are written down with their reasoning and the alternatives rejected. That is what lets somebody revisit them in two years.

Committed to the outcome

We care that the system gets used and helps, not that the project closes. That is the difference between billing once and working with someone for years.

Technologies

What we work with

The problem picks the tool. These are the ones we know well enough to stand behind in production.

Back-end
  • PHP
  • Laravel
  • Node.js
  • TypeScript
  • Python
Front-end
  • Vue.js
  • Nuxt
  • TypeScript
  • Tailwind CSS
  • React Native
Data
  • PostgreSQL
  • MySQL
  • SQL
  • ETL
  • Dimensional modelling
  • BI
Infrastructure
  • Docker
  • AWS
  • Linux
  • nginx
  • GitHub Actions
  • GitLab CI
Artificial intelligence
  • LLM APIs
  • RAG
  • MCP
  • Evaluation
  • Automation

Next step

Half an hour well spent

Walk us through the problem on a short call. You leave with a first read on how we'd approach it and what it would involve — no commitment, no sales deck.