// senior backend engineer// ruby on rails

David Morales

Software architecture, clean code and scalable Rails.

25+ years building for the web. Ruby on Rails since 2013, remote since 2014. Based in Barcelona.

01about

I’ve been building for the web for more than 25 years. First with PHP, and since 2013 with Ruby on Rails.

I care about software architecture, clean code and scalable solutions that deliver real business value. Remote since 2014: distributed teams, asynchronous collaboration. I’ve taught 2,000+ developers on LinkedIn Learning and write about software design on DevelClan.

~/davidmles $ git log --graph --first-parent--graph --date-order
  1. nowHEAD → mainWriting on DevelClan and going deeper into software architecture and infrastructure.
  2. 2024Published “Hands-On Introduction: Ruby on Rails” on LinkedIn Learning.
  3. 2023Tech Lead on a white-label e-commerce platform with dynamic pricing and high concurrency: took over from a team of five, migrated the payments platform and designed an accounts API.
  4. 2023Published “Hotwire: Reactive Ruby on Rails Applications” on LinkedIn Learning.
  5. 2022Built a gardening marketplace and helped maintain a creative crowdfunding platform.
  6. 2022Published my first LinkedIn Learning course: “Ruby on Rails: Debugging”.
  7. 2015Senior engineer on UK platforms: a healthcare service for the NHS and a smart-home store.
  8. 2014Went remote, building Rails apps for a London agency.
  9. 2013Poured everything I knew about Symfony 2 into a Udemy course, then left PHP for Ruby on Rails.
  10. 2008The Symfony years: classifieds platforms, often as the only developer.
  11. 2006CTO at a Barcelona start-up building an eco social network. PHP, MySQL, Linux.
  12. 2005Hired as a UNIX systems administrator, straight in as a level-3 technician. Reverted after a week: I was a developer.
  13. 2005university:Graduated in Computer Science at the University of Barcelona.
  14. 2005mac:First laptop: an Apple iBook G4 running Mac OS X Tiger. The first step on a long road to an all-Mac setup.
  15. 2001Full-time trainer: PHP, ASP, Java, C, UNIX and Linux courses for companies, while studying at university.
  16. 2001university:Started Computer Science at the University of Barcelona.
  17. 2000Merged into my first job in October, thanks to a recommendation from someone I met on #php: a train-management web app for a Catalan railway, in ASP. On day one a stack of notes landed on my desk: I was teaching a JavaScript course the following week.
  18. 2000Hired to program COBOL on AS/400 systems. Reverted after a few days: it wasn't my path.
  19. 1998irc:Started building websites in PHP and hanging out in #php on IRC-Hispano.
  20. 1998linux:First Linux: Red Hat 5.0, from a magazine CD, installed next to Windows to see what it could do.
  21. 1998npi:NPI #3: replaced NeoBook with my own engine, written in C for MS-DOS. Shipped on the cover CD of PCManía 70, the Spanish computer magazine.
  22. 1998freelance:First client: a billing app in C for the local mechanic. Without a real database it grew too complex, and I had to abandon it. Lesson learned.
  23. 1997npi:NPI #1: a disk magazine made with classmates in NeoBook. I wrote about computers and music. Published on the cover CD of PCManía 61; #2 followed in PCManía 66.
  24. 1996demoscene:Fell for the demoscene, in the days of Spanish group Iguana and their demo Despair. What those people squeezed out of assembly is what got me building things.
  25. 1996music:Discovered Fast Tracker II and started composing my first music on the computer.
  26. 1996hardware:Built my first PC from parts, a Pentium 133, and from then on built every one myself. Soon I was everyone’s tech support.
  27. 1995win95:Tried to install Windows 95 by copying a friend’s folders onto my new Pentium 90. It didn’t boot, and that’s how I learned how an operating system really gets installed.
  28. 1995academy:Diploma from my neighbourhood computer academy: MS-DOS 6.2, WordPerfect 5.1, dBase III Plus and Lotus 1-2-3. Years earlier, BASIC hadn’t won me over.
  29. 1994books:Learned the basics of Pascal, then C.
  30. 1994pcmania:Read PCManía, a Spanish computer magazine, cover to cover every month. That’s where I learned hardware and computer architecture.
  31. 1993Initial commit: my first PC, an IBM PS/1 with a 386SX at 25 MHz, MS-DOS 5.0 and Windows 3.1.

02work

03notes

04contact