It begins in Lisbon, because everything else on this page does. Thirty places across eleven countries, plotted where they actually are.
FULL-STACK DEVELOPER // SOFTWARE FOR THE FACTORY FLOOR
Duarte Lucas
I build software, and I have run the machines it talks to.
The part that interests me is what happens after launch — taking payments, issuing licences, cutting releases, answering the person who found the bug.
Twelve years of software, self-taught, and most of it shipped and still running.
TypeScript and Python, React and Next.js, the APIs and databases behind them, and the Linux servers I run them on.
I have built for a factory floor as well: Raspberry Pi and RFID readers on the line, output measured per operator, and the production data that came off it.
Three of those twelve years I spent working a production line myself, so when software has to talk to machines and sensors, I have stood at the machine it talks to.
- 12 years writing software
- 12years
writing software
- 48 tools in one MCP server
- 48tools
in one MCP server
- 3 years on the production line
- 3years
on the production line
02Where I am from



I was born in Lisbon.
And grew up there until 2010.
I started swimming at eight.
And swam competitively until I was sixteen.



In 2010 I moved to Sintra.
Most of what I did outside the pool was still in the water — surf, bodyboard, skimboarding.
What was not in the water was on a board with wheels.
Skateboard, longboard. I loved it.
The software started at a family dinner.
Cousins were learning to program, and I got interested. Everything after that I taught myself.
Out of the office I surf.
03Where I have been










AlbufeiraPortugal37° 05' N · 8° 15' W01 / 10
Photographs of these places · Pexels licence
With friends, or with family. Long drives across Iberia and up through the Alps — the kind where the route is half the reason you went.
Andorra, the Riviera, Milan, the lakes below the Alps. This is the stretch where the map stops being flat and the driving gets interesting.
The northernmost points are in the Netherlands, which is not a coincidence — it is where I live now.
- Portugal10
- Spain3
- Andorra1
- Monaco1
- Italy1
- France2
- Switzerland3
- Germany4
- Belgium1
- United Kingdom1
- Netherlands3
30 places · 11 countries37° 05' N → 52° 09' N
04Career
Twelve years of software, 2014 to 2026: what I built, and who employed me to build it.
2014–presentSelf-employed — freelance & own products
- 2014–2021Game servers
- ≈2020–presentA server that became a business
A multiplayer server that became a small commerce, and the point where the work started paying — sold into a niche.
- Jan–Jun 2022Web & Mobile Development Intern · LEADS R US
- Jul 2022–Nov 2023Full-Stack Developer · TheraBox
- ≈2024–presentPlugin framework, from scratch
Not all of it landed. There were quiet years, and products that found no market.
06Client work
Version two of a commercial clinic-management product, restarted on a new foundation because version one could not carry what was being asked of it.
- Vue
- Vuex
- Flask
- Flutter
- Odoo
- Python
Apps used in Switzerland to record when workers started and stopped, so an HR department had something it could actually process.
- Flutter
Raspberry Pi units and RFID readers on a production floor, measuring what each operator actually produced.
- Raspberry Pi
- RFID
07Own projects
None of this was built for a portfolio. It was built because if I am not writing software at work, I am writing it at home.
- Next.js
- React
- TypeScript
- Tailwind
- +7
- TypeScript
- PostgreSQL
- +9
- TypeScript
- React
- +2
- Flutter
- Dart
- ESP32
- +4
- React
- Tailwind
- MySQL
- +2
The architecture is in place; the features land in later phases. Said plainly because the repository says it plainly.
- Vue
- MySQL
- +2
- React
- Tailwind
- PostgreSQL
- +3
The frontend is complete and the backend is implemented; checkout and sign-in are wired and waiting on credentials.
- React
- TypeScript
- Tailwind
- PostgreSQL
- +6
- TypeScript
- Node.js
- +1
Public, and the only one of the nine whose code can be read. It installs straight from the repository with npx.
- COREWhat I reach for first.
- TypeScript
- JavaScript
- Python
- Node.js
- React
- Next.js
- PostgreSQL
- ALSO WORKING WITHShipped with, in production.
- Vue
- Nuxt
- Strapi
- Flutter
- Dart
- C#
- .NET
- FastAPI
- Flask
- Laravel
- PHP
- Swift
- Odoo
- Tailwind
- MySQL
- TimescaleDB
- Docker
- Linux VPS
- Git
- MACHINES & SIGNALSThe half most developer stacks do not have.
- OPC-UA
- Modbus
- ESP32
- Arduino
- Raspberry Pi
- RFID
08Contact
I build software, and I have run the machines it talks to.
Open to full-stack roles in the Eindhoven and Brainport region.
Portuguese, EU citizen
The quickest way to reach me is LinkedIn.


