Blog

ParetOS: From a Need to Our Own Operating System

emmi

Emmi Kilpinen

Marketing and Communications

Date

4/15/2025

ParetOS trainees

Everything started with a need.

We had a practical need to create and manage the Pareto-branded CVs for our consultants. We explored existing solutions, but found these options were too costly or didn’t offer the flexibility and customization we needed. We first had all our CVs in Google Slides and then in Figma, but both were a real struggle to keep the CVs updated and on-brand. The CVs were multiple pages long. Moving sections manually from page to another usually broke the layout in both tools, not to mention updating our evolving branding across all CVs.

This led to Mikko McMenamin spending one evening vibe coding a simple Flutter app connected to Google Sheets, called CV Maker, to solve the issue. In the second iteration, we upgraded the backend from Google Sheets to Supabase to improve data management and developed a proper user interface to edit the CVs. Supabase was clearly the right choice for the job, because it provides a managed Postgres database with authentication, API, storage, and allows us to add new features fast.

At this stage, the notorious Feature Creep crawled from the printer room. Why stop at managing CVs? We could consolidate our company Handbook and resources allocation to the same platform, and continue developing the idea towards an actual operating system! We were able to make a deal with Mr. Creep and agreed to only add the features that matter the most.

To support the grander vision and development of what we now called ParetOS, we decided to migrate from Flutter to Next.js. The strong ecosystem of Next.js and React enabled this kind of AI-driven web platform development much better and allowed us to move faster.

ParetOS is no longer just a standalone tool but an internal platform that centralizes company information, provides searchable information about our experts’ technical skills and experience, and more. With AI capabilities, ParetOS can soon also generate branded content, automate workflows, and provide important business insights. Given today's rapid advancements in AI, developing internal tools has become fast and affordable. By choosing a lean tech stack and leveraging AI coding tools such as Cursor and Claude Code, we avoid spending thousands annually on external SaaS products. Instead we can create tailored tools inside one platform. This will also create a flywheel effect: more usable data stored in our own PostgreSQL database means more possibilities to create useful tools and especially AI functions to support our daily operations.

Image

A screenshot of the CV Maker tool in ParetOS.

ParetOS provided an ideal project for trainees

We’ve had four students from SASKY completing their traineeships with us. As an internal project, ParetOS also became an ideal learning ground for them. It allowed them to gain hands-on experience on software development processes, while not bound by strict deadlines. Pareto's Valtteri Luoma and Mikko McMenamin, who created the initial ParetOS implementation, continued to lead the project and review their PRs, making sure the code quality stays high.

For managing tasks, the team used Linear, and for deployment, GitHub Actions and Vercel. The trainees also became familiar with OpenAI APIs and AI SDKs such as Langsmith and Vercel AI SDK.

Here’s what some of our trainees shared about their experience:

For Simo Ahlqvist, the traineeship was a crucial step in his developer journey. Despite having only a couple of years of coding experience, he emphasizes the impact of the traineeship. “The most important lessons I learned from Pareto are the tools and working methods to carry out the work of a developer professionally, modernly, and to a high standard.”

Jetro Tölli shares how being part of building a professional quality project from the ground up was an important learning experience. “This period was invaluable to my progress as a developer," Jetro reflects, highlighting the hands-on work that surpassed school projects.

Ville Viianen’s time at Pareto was characterized by learning through doing, especially with his involvement in developing the internal platform ParetOS. He values practical experience, saying, “It’s been especially valuable to contribute to a real-world project that’s actively in use.” 

In a software consultancy, there aren’t many opportunities for juniors, as clients are usually looking for senior developers. Working on an internal project such as ParetOS is a great way to get experience, and yet it is also beneficial for the company, as most of the consultants at Pareto are fully focused on client work. 

Jetro: “Experiencing the atmosphere at Pareto has been both a blessing and a curse. The environment is fantastic: light yet meaningful, with direct, actionable feedback. The curse is that it sets a standard that’ll be tough for future workplaces to match.”

Simo: “Before retraining, I worked in warehousing and operated heavy machinery. Joining Pareto was a positive culture shock. I immediately felt welcomed, and the supportive atmosphere with its flat hierarchy made a strong impression. It was inspiring to see how much everyone genuinely enjoyed their work and valued one another.”

Ville and Joni completed their traineeships last week, thank you for your valuable contributions! Jetro and Simo will continue at Pareto, carrying on with ParetOS for the next few months.

Image

From left to right in the picture: Simo Ahlqvist, Ville Viianen, Joni Mäkelä and Jetro Tölli.

Want to learn more? Get in touch!

Juho Jokiniitty
Juho Jokiniitty
Sales and Recruitment

juho.jokiniitty@paretosoftware.fi

+358 50 320 6857