Hello, I'm Rui.
I'm a software developer based in Cambridge. I build web applications, fix broken systems, and write code that solves actual problems.
The Short Version
I spent over 10 years in Portugal working as a hardware technician—fixing computers, printers, and POS systems. In 2017, I moved to the UK to study Computer Science at Anglia Ruskin University.
That background in hardware means I don't just look at code; I look at the whole system. I build software that works reliably for the people who actually use it.
My Approach
- → The right tool for the job. I'm not married to a specific stack. If an out-of-the-box solution exists, I use it. We don't need to reinvent the wheel. But when a problem requires a custom solution, I'm not afraid to roll up my sleeves and write the code that's needed.
- → Simplicity first. I prefer boring, stable code over clever hacks.
- → Data integrity. I prioritize safe, normalized database structures to ensure data is never lost or corrupted.
Frequently Asked Questions
- "Why PHP and Laravel in 2024? Isn't that 'old'?"
- Because it ships. While others are rewriting their frontend stack for the third time this year, I'm deploying features. It's stable, fast enough, and reliable. I prefer finished projects over hype.
- "Why do you prefer 'Boring Code'?"
- Because "clever" code breaks at 3 AM, and I like my sleep. I write code that's easy to read, debug, and hand over. If it needs a paragraph to explain, it's too complicated.
- "Native iOS vs. Web: How do you decide?"
- Utility. If I need it to work in 3 seconds while you're walking (Widgets, Watch, Notifications), it's Native. If it's a dashboard for deep work, it's Web.
- "What is the hardest part of Systems Integration?"
- The politics. Integrating two systems usually exposes that the humans using them had different assumptions. My job is often 20% coding and 80% diplomat between departments.
- "Do you design your own UIs?"
-
Sometimes. I prompt the AI gods until they bless me with something decent ¯\_(ツ)_/¯.
(Real answer: Tailwind + component libraries do most of the heavy lifting. I can design "clean", but I’m not pretending to be a full-time designer.) - "Can you fix my printer?"
- I can, but I'll complain the whole time. Troubleshooting hardware gave me my debugging skills, but I apply them to servers now.
- "Is AI just a gimmick in your projects?"
- No. I don't build "Chatbots." I use AI as a silent function call—cleaning messy data or generating boring text so humans don't have to. It's a tool, not a personality.
- "Linux, Mac, or Windows?"
- MacOS for code, Linux for servers, Windows because corporate requires it. I use whatever runs the software best.
- "How do you handle 'It works on my machine'?"
- I don’t rely on "it works on my machine" setups. I build a staging environment that mirrors production and automate the boring checks. If it’s not versioned, it doesn’t exist.
Backend
Systems & Tools
Cloud & Integration
Kinetics
Databases
Microsoft 365 & Business Apps
Power BI
Power Apps
AI & Assistants
Frontend
The Journey
Software Developer
St John's College, Cambridge
Overhauling accommodation and security systems. Building integrations between Kinetics and Salto Space, native iOS apps, and updating legacy web platforms.
Web Developer
Freelance
Specialized in custom CRM development for the Portuguese Real Estate market (IDPruf) and crowdfunding platforms (MaisLusofonia). Heavy focus on Laravel, MySQL, Google Maps API, and payment gateway integrations.
Computer Repair Technician
Disco Rotativo
Hardware diagnostics, repair, and customer support.
Computer Repair Technician
TECFORSIS Lda
Hardware diagnostics, repair, and customer support.
Education
Anglia Ruskin University 🇬🇧
Bachelor of Engineering - BEng, Computer Science
Grade: 1st (82.5%)
Universidade de Aveiro 🇵🇹
CET (EQF level 5) - Technology and Programming, Computer Science