Skip to content
Marco Salas at a desk, surrounded by architectural drawings and a screen showing Angular code
~/marco-salas --dev
$ whoami

Architect by profession 👷🏽‍♂️. Science enthusiast 👨🏽‍🔬. Dog lover 🐶. Rock&metal fan 🤘🏽. Software Developer 👨🏽‍💻. From 🇵🇪 living in 🇩🇪.

AI-generated image · only the face is real

// about Marco Salas

From designing buildings in Peru to building software in Germany — my career has always revolved around the same thing: structure, functionality, and problem-solving.

Before tech, I was co-founder, Administrative Manager, and Principal Architect of an Architecture and Engineering firm in Peru for nine years. I managed over 200,000 m² of built area and led technical documentation, building safety, and real estate management initiatives — the kind of responsibility that teaches you to think about the whole system, not just isolated pieces.

I try to bring that same approach to my new field: today I'm a Software Developer specialized in Angular frontend (my foundation), with five years of professional experience at a German company, and solid knowledge of NestJS, Cypress, Angular Material, and Ionic. I bring to code some of the same discipline I once brought to a blueprint — and I weave AI (Copilot, Claude) into my day-to-day, as expected of an up-to-date developer.

Outside of work, in 2017 I founded a Facebook community dedicated to helping lost and found dogs in Jesús María, Lima. Today, living far away, I've left it in the hands of a great team of volunteers who keep it running day to day — because big causes are built by many.

// tech stack

Frontend
Angular, Angular SSR, Tailwind, Material, Ionic, NgRx
Backend
NestJS, TypeOrm, Relational Databases
Testing
Jest, Cypress, Playwright
Other
Git, TypeScript, Keycloakify, Storybook

// how I see the craft

Anyone can ship something that works today. The real work is what happens when it has to keep working.

Templates, visual builders and AI solve the easy 80%. The remaining 20% — the part that decides whether a system holds up under real use, real data, and real change — is still engineering work.

01
AI writes code, but it doesn't own the decisions

I use AI every day, and that's exactly why I know where it stops being useful: it doesn't know which decision will make sense in six months, which shortcut becomes a wall, or which two features are secretly the same feature. That's still judgment, not generation.

02
Every piece is part of a bigger system

A form isn't just a form — it's the thing that has to stay in sync with a database, a console someone else is looking at, and a report someone will trust later. Building in isolation is easy; building so the pieces don't quietly disagree with each other is the job.

03
What looks like a detail is often where systems break

Edge cases, race conditions, "what happens if two people do this at once" — none of it shows in a demo. It shows three months later, at the worst possible time. Designing for that upfront is invisible work, but it's the work that matters.

04
Growth exposes what was never really designed

A feature added on top of a shortcut works — until the business needs something the shortcut never accounted for. The difference between a system that grows and one that gets rebuilt every 18 months is whether it was designed as a system in the first place, not a page.

05
Time counts too

Three weeks fighting the wrong foundation is three weeks you don't get back — on either side.

To me, that's the real craft: not just building the thing, but designing it so it keeps making sense as it grows.

// side project

Mascotas Jesús María

I founded this community in 2017 to help spread the word about lost and found pets in Jesús María (Lima). Today, living far away, it's still going thanks to the team of volunteers I left it with — a heart project, not a code one, but with the same commitment as always.

Mascotas Jesús María

// how I work today

Frontend Developer at qupaya, a German software consultancy — since 2021

qupaya technologies GmbH

qupaya helps companies build and modernize software products with continuous technical support — from architecture guidance and technical debt prevention to mentoring and hands-on development, increasingly working alongside AI-assisted tools to move faster without losing code quality. There, I work full-time building production applications: interfaces used by real people every day, with the accessibility, performance, and maintainability requirements that come with that.

RESTLOS main project

Within that role, I'm part of the RESTLOS Core Team, a complete auction platform we designed and built from the ground up: a real-time bidding storefront, a management console for staff, a booking system for lot pickup, and a native mobile app for the warehouse team — all sharing one architecture. Today we continue as the engineering team, while the RESTLOS team drives the product roadmap.

What I do day to day

Feature development in Angular and NestJS, code review, and close work with design and backend.

How I work

In a distributed team, in German and English, with continuous delivery and peer review.

// contact