An engineer for your product. Whatever the industry.

We join the team and the codebase of a product that already runs, or build a new one from zero - architecture, MVP, infrastructure, launch and further development. We work under your direction, with experience across banking, energy, retail, finance and education.

New or existing product · Your code · Priced on request← All service lines

Two paths

A product that already runs, or an idea with no code yet.

Both paths are equally ours. Only the first weeks differ - after that the work is the same: small, reviewable steps in your repository.

01

Existing product

  • we join the team, code and infrastructure you already have
  • we follow your conventions, processes and priorities
  • we take on new features, integrations, upgrades and performance

02

New product from zero

  • architecture and technology choices, reasoned in writing
  • an MVP that launches early and grows in stages
  • infrastructure, deployment and launch - and development after it

Industries

We have worked where a mistake costs money.

Projects from the years before Maina. Clients are not named because of confidentiality agreements.

01Retail · US

Autonomous stores

Software for stores that run with no checkouts and no cashiers.

02Energy

Solar parks

Software built for solar parks.

03Banking

Cash-counting machines

Banking software that works with cash-counting machines.

04Finance · US

Station investment model

Calculates revenue, cost and return for every equipment configuration at a given address.

05Fuel · international company

Data analysis and BI

Analysis and reporting for one of the world's largest companies in the fuel and filling-station industry.

06Education · Italy

School systems

Local fees, school canteens and school transport, managed in one place.

07Commerce and business

Online stores and internal systems

Stores, catalogues, orders and the internal software that runs the business behind them. It is also Maina's focus today.

Your field isn't here? The engineering transfers: data models, integrations, reporting and reliability are the same questions whether the system serves a school, a bank or a solar park.

More about our experience

What we take on

From the first architecture sketch to the next release.

We build new products and parts of them, or take on work in a product that already runs - as part of your team and on your priorities.

New products and MVPs from scratch

From the idea to a working first version: a clear scope, an early launch and a foundation that holds for the next stages instead of being rewritten.

Architecture and technical decisions

Technology choices, the data model and the shape of the system - reasoned in writing, so the why is as clear as the what.

New features in an existing product

We add capabilities to a working system without rewriting it: we read the code, follow its conventions and leave tests behind.

Backend and APIs

Services, business logic, databases and APIs the rest of the product can rely on.

Web frontends

Admin panels, customer portals and public pages - fast, accessible and comfortable on a phone.

Mobile apps

Android and iOS apps in React Native, Flutter or Kotlin, on the same backend as the web product.

Integrations with external systems

ERP, accounting, payments, couriers, suppliers and third-party APIs - with error handling and a record of what went through and what didn't.

Data and reporting

Queries, BI dashboards and data analysis - from the SQL and data preparation to the finished report.

Infrastructure and DevOps

Servers and cloud, containers, automated deployment, monitoring and backups - described as code and in your name.

Upgrades and further development

New framework and library versions, fixes and less technical debt - in code that is yours and stays yours.

Performance

We measure where time goes - slow queries, heavy pages, overloaded servers - and fix it with numbers before and after.

Code review

A second pair of eyes on changes, architecture or a whole codebase, with specific notes instead of general advice.

Ways to work together

Three ways to work together.

We pick the format to fit the work, not the other way round. All three are priced on request - once we have seen what is actually needed.

01Priced on request

Fixed-scope project

A clearly described piece of work or the first version of a new product, with a written quote: what gets built, by when and for how much.

02Priced on request

Monthly retainer

An agreed number of hours every month and a steady person on your team. Right for a product that keeps evolving.

03Priced on request

Hourly, on demand

No monthly commitment: individual tasks as they come up, billed by the hour. Right for smaller or unpredictable needs.

There are no numbers on this page on purpose: hours and scope depend on your product, your team and your deadlines. The quote is written and does not change without your agreement.

How it starts

From the first call to the first pull request.

Five steps that usually fit into a week or two. Only the second depends on whether the product exists yet.

  1. 01 · Intro call

    A conversation about the product or idea, the team and the task. If we are not the right fit, you will hear it here.

  2. 02 · Discovery or a read of the code

    Before we write the first line:

    New product
    we clarify the goal, the users and the constraints, and propose an architecture and a stack.
    Existing product
    we get access to the repository, the task tracker and the infrastructure, and read the code.
  3. 03 · Plan and estimate

    We write down how we will approach it, what the risks are and how long it will take.

  4. 04 · Work in your repository

    Every change arrives as a pull request your team reviews and approves. For a new product, the repository and the infrastructure are in your name from day one.

  5. 05 · Launch, report and further work

    We launch in stages, with a regular report of what was done and how long it took, and an invoice from a Bulgarian company. After launch we keep developing the product if you want us to.

What you can count on

We work as part of your team, not beside it.

A few things that are not up for negotiation on our side.

Code and tools

  • we work in your Git and your task tools - for a new product we set them up in your name
  • the code is yours - from the first line, no exceptions
  • we sign an NDA before we see any code or internal information

Paperwork and communication

  • invoices from a Bulgarian company
  • we work in a European time zone
  • communication in Bulgarian or English

Technologies

What we work with.

Technologies we have used on real projects. We choose for the product, not out of habit.

Languages
  • TypeScript
  • JavaScript
  • Java
  • Kotlin
  • Python
  • C#
  • Dart
  • SQL
  • Bash / PowerShell
Frontend and web
  • React
  • Next.js
  • Angular
  • Vite
  • Tailwind CSS
  • Radix / shadcn UI
  • TanStack Query
  • Zustand
  • PWA
  • Three.js
Backend and APIs
  • Node.js
  • NestJS
  • Express
  • Fastify
  • Spring Boot
  • Spring Cloud microservices
  • ASP.NET Core
  • FastAPI
  • Flask
  • REST APIs
  • WebSockets
  • Kafka
  • job queues (BullMQ)
Mobile apps
  • React Native / Expo
  • Flutter
  • Android (Kotlin)
Databases and search
  • PostgreSQL
  • MySQL / MariaDB
  • SQL Server
  • MongoDB
  • Redis
  • DynamoDB
  • Snowflake
  • Meilisearch
  • S3 / MinIO storage
Data and AI
  • pandas
  • Jupyter
  • BI reporting
  • Excel / PDF report generation
  • LLM integrations (MCP)
Cloud and DevOps
  • Docker
  • Terraform
  • Ansible
  • AWS (incl. CDK)
  • Azure
  • Hetzner
  • GitHub Actions
  • Nginx / Traefik
  • Linux
  • Prometheus / Grafana / Loki
  • Keycloak
Commerce and content
  • Medusa
  • Stripe
  • Strapi
  • payment and courier integrations
Testing and quality
  • Playwright
  • Jest
  • Vitest
  • JUnit
  • Selenium
  • accessibility checks (axe)
Auth and security
  • OAuth / JWT
  • passkeys (WebAuthn)
  • two-factor login

Not on the list? Ask - the list grows with the projects.

Frequently asked questions

Before we begin.

Can you build something from scratch?

Yes. We start from the goal and the constraints, propose an architecture and a stack, build a first version, set up the infrastructure and launch it - and keep developing the product afterwards if you want us to. The code and the servers are in your name from day one.

Do you work on code you didn't write?

Yes. In that case we work as part of your team and under your direction: we read the existing code, follow its conventions and propose changes as pull requests your people approve.

Is there a minimum engagement?

There is no fixed minimum. Hourly work is billed only for the time actually spent; a retainer or a fixed-scope project is agreed to fit the task.

How is time reported?

Every task is reported with its hours and a short note on what was done. The report arrives regularly with the invoice, and the changes themselves are visible in your repository's history.

Who owns the code?

You do. Everything written for you is yours from the moment it lands in your repository. We keep no rights and build in no dependencies you could not later walk away from.

Can we start with a small paid trial task?

Yes, and we often recommend it. One bounded task shows both sides how communication and quality work before a longer commitment.

Do you sign an NDA?

Yes, before we see any code or internal information. It is also why the clients behind our past projects are not named on this page.

Let's talk

Tell us about the product or the idea.

We will reply within 2 business days with an honest first view of whether and how we can help.

Start a projectFirst conversation · No obligation