Most traditional interviews are focused on celebrities or popular personalities. However, I am more interested in interviews with hidden gems, unknown figures doing solid work, folks overcoming challenges just to be on the same playground as everyone else.
Hence, I wanted to start featuring some of them on this blog, providing a platform for sharing their compelling stories and valuable lessons. While they may not be on the covers of major publications or appearing on popular podcasts, their stories, backgrounds and experiences are nonetheless fascinating and worthy of a read.
This post shares the story of Pedro David Garcia Lopez, who switched careers from being a Lorry driver to a Ruby on Rails developer at the age of 38, an age that many folks in the software industry consider to be too old (which is nonsense!). I came across Pedro on LinkedIn and found his story really inspiring.
The main thing I want you to get from this post is: It's never too late to pursue your dreams, especially to start learning to program. It can unlock huge opportunities if done right.
With that, let's hear Pedro's story. I hope you find it as inspiring as I did.
Q. Can you tell us a little about yourself?
I am a 42-year-old Spaniard who moved to the UK in 2015, but I am now returning to my country to be closer to family, which I consider one of the most important things in life.
I came to the UK in 2015 as a lorry driver, which was a tough decision. As a lorry driver, I spent more time in the UK than at home. Typically, I would spend around 4-6 days at home each month, and the rest of the time, I was on the road, travelling between the UK and other parts of Europe. I decided to move to the UK to embrace new opportunities and allow my daughter to do the same. Additionally, I wanted to learn English properly, which I'm still working on.
As a professional driver, I have driven almost every type of vehicle on the road, and I have travelled to all the EU countries on the continent at least once. In fact, I cover enough KM in my lorry to circle the world several times over.
As a developer, I fell in love with Ruby and Ruby on Rails the first time I learned about them. I plan to stick with them until it is still possible, as I don’t think anything similar is out there regarding developer happiness and productivity (opinion from my small watchtower!); I worked with PHP for a small period as well as JS (many flavours), but nothing comes close to Rails and Ruby.
I consider myself a full-stack developer as I have good skills in CSS, good attention to detail in the front end, and some notion of UI/UX, but there is always room to improve in those areas. I also love working in the backend. Basically, I'm a Master of none 😜.
Q. How did you get into programming?
Well, this is an excellent question and quite long to answer.
My first interaction with a computer was when I was around 12 years old as part of a typing course that summer when we moved from more advanced setups to a computer, sometimes working on MS-DOS or Windows 3.1. Since that day, I have been fascinated by those wizard machines.
Coming from a modest family, the chances of having a computer were low. Still, the death of my father at the age of 14 and the need to start working to support my family at the same time as studying put them at the level of finding a unicorn. Still, my love for computers never disappeared, and I never missed an opportunity to play with them at school or the library.
That was until, at the age of 18, I went to full-time work, and with three months of saving, I bought my first computer, a Pentium II; having a computer in my hands now, I started to feel the need to know how to program it.
So I bought a book to learn C++, which was a big mistake, as it was too technical and a deep book. I got really confused, and I could never do anything interesting at all. Then life took over. I never really went into programming, but years passed, and I became a lorry driver by need and came here to the UK.
But, I still had a passion for computers and being good at them.
With my English skills improving and the easily accessible information out there, at some point, my little child's dream called to the door again.
I took a few YouTube courses here and there, HTML, CSS, JS, the typical course of "Become a programmer in 7 days" kind of things, then I discovered freeCodeCamp, that was a bit more structured and serious, but still I found that I was missing something. My long hours as a lorry driver and doing my duties as a dad and a husband didn’t allow me real serious time and pace to become a developer.
So, after all those years of hard work and caring for my family, I decided to pursue my childhood dream of becoming a developer. I quit my stable job and decided to try one year to become a developer or return to my life and scrap this idea forever.
In September 2019, I started my adventure, but what path should I follow? There are too many: Python, JavaScript (which was trending), C#, PHP, frontend, backend, DevOps, etc. There are way too many to pick just one if it is not right.
So, I decided to learn Python and buy some Udemy courses (there were too many!) to learn the basics. It wasn't as bad as my C++ experience but didn't quite click. I could follow but not create, so quickly I realized that that would not work for me.
I was losing a bit of faith, but after doing some research, I came across the concept of Coding Bootcamps. After some back and forth to make that decision (all options were expensive 💰), I decided to join Flatiron School. If you couldn't secure a job after completing their course, you didn't have to pay them anything. It made me feel that I had little to lose in that sense.
So there I learned about Ruby and its basics. I also learned software development in a structured way, from Ruby and Sinatra, to Ruby on Rails and React. All supported by teachers, colleges, and good assignments and exercises to make you not only follow, but also create new things.
The sense of pride and accomplishment I felt after completing my first projects was unforgettable, so by the end of May 2020, I graduated from the course with a sense that I could actually do it. I felt like I knew things now; I do not just know things; but I know how to figure things out and how to learn new things on my own.
By the way, do you know what happened in 2020? Yes, it was COVID.
I had to start finding a new job in those circumstances. The lockdown was still around, so there was no interview or chance to connect with people; a 38-year-old man with no experience and fresh for a Bootcamp doesn’t seem like the ideal hiring candidate companies were looking for...
Even with post-graduate support from Flatiron, things were tough. Not a single interview or call for months; I was feeling quite anxious about my CV, wondering if it was just going to end up in the bin, but I felt that I could do it, and my passion was higher than ever. I didn’t want to go back to driving.
Finally, the first opportunity arose in Manchester, two hours away from my home by Train (no Work-From-Home policy) and a salary that was 1/3rd of my salary as a lorry driver, most of which went to pay for the Train… working with PHP and jQuery, but you know what, I didn’t care about any of that as it was my dream. I accepted that offer; I had to start somewhere, and if life has taught me something, it is that with hard work, everything is possible.
Q. How and when did you come across Ruby and Rails? What do you most like about them both?
I first learned about Ruby and Rails through the Bootcamp, but working at Superbyte, I gained more experience with them.
At Superbyte, we used a non-standard stack (Mongoid and some React), but I learned a lot from the team and gained a lot of experience.
My passion for it grew stronger after gaining professional experience with Ruby on Rails. Everything becomes much easier to handle once you get familiar with its conventions. I find the community and the constantly evolving ecosystem to be the most appealing aspects of it.
I am excited to move on from React and embrace the fresh air of the Hotwire ecosystem, which allows me to handle everything the Rails way.
Q. 5 programming books that meant most to you, and why?
I didn’t have the time or passion to read technical books until later in my small career, when I noticed all the gaps I had in many areas, so I haven’t read many, to give a good list of the ones meant the most to me. Too many still to read.
But my list with no specific order will be:
- Layered Design for Ruby on Rails Applications, by Vladimir Dementyev
- Rebuilding Rails by Noah Gibbs
- Ruby Under a Microscope by Pat Shaughnessy
- Practical Object-Oriented Design in Ruby by Sandi Metz
I should revisit some of them as my perspective and way of seeing things are still in progress and constantly evolving. I am still on a learning adventure for all these principles that other people from a more traditional background have learned while I’m still discovering them.
Q. Who are your programming heroes?
I greatly admire individuals who possess the skill to program and a passion for it. Those who go further by sharing their knowledge and experiences with the world truly stand out as heroes. Their willingness to educate others and contribute to the programming community's collective growth is commendable and inspiring.
Special mention to Quincy Larson, freeCodeCamp and all the content creators like you who put a lot of time and effort into sharing.
On the personal Avi Flombaum, one of my Teachers at Flatiron School. He shares amazing content on his blog, and every person I have worked with has taken the time not just to help me but also to help me grow as a developer and as a person.
Q. What does your typical day look like as a developer? What do you like the most about your current work?
In my short career, I have worked in all setups, from fully WFH to hybrid, to working five days in the office.
Now that I plan to return to Spain, my new job will be fully remote. I’m transitioning to a new Role in gocertify in mid-April, so I am unsure what my day will look like.
In my role at Superbyte, I transitioned from Junior Developer to a more semi-senior role, where I was involved in writing code, conceptual designs, and some R&D.
Most of the time, I write code but also enjoy pair programming sometimes with others and review PRs. I love to teach as I think it is the best way to learn any concept, so I am always keen to help my peers suggest new approaches or learn from them.
Q. What resources and practices do you recommend for learning and keeping up to date?
Learn how to learn.
Everyone is different and has different ways to learn and retain what has been learned.
I advise learning how to learn and find what works best for you. I learn by doing or watching a tutorial and trying to replicate or go beyond the tutorial in the areas I want to learn. Like books, I read them first, no coding, and then I read them again more like a guide than a following.
One important thing is to not feel like you must learn everything. Not everyone needs to know everything. Take something you like and focus on that thing. It will take you further than trying to learn too many things and ending up just spending a lot of time fake-learning.
Q. What advice do you have for new programmers?
The silliest question is the one that is not asked.
Work hard, be bold and ask questions. The silliest question is the one that is not asked. Don’t feel like you are not good enough or you know too little. Everyone eventually has been in the same situation at some point, so keep it going.
Learn Ruby and Rails. You will find it not just easy, but also enjoyable, once you get to the turning point.
Another good thing is to find a mentor or someone who is keen to help you grow. There is a good possible resource for that: https://firstrubyfriend.org/
For me, it is all about passion; it was a hobby, but now it is my job.
"If you find a job you love, you’ll never work again..."— Winston Churchill
Q. Tools of the trade - What are some of your favourite software programs in your day-to-day work?
- Code editor: VS Code
- Database GUI: MongoDB Compass
- Terminal: iTerm with ‘oh my zsh’
- Browser: Chrome
- Notes and Project Management: Apple Notes, VScode markdown, Github projects/issues
- Communication: Microsoft Teams.
Q. What’s the best way for people to connect with you?
I’m not really active in socials, but I always keep an eye on LinkedIn.
I just found out that my old personal website, which I had written with Django, is down as the free host I hosted it on is no longer available, so it is a good opportunity to rebuild it in Ruby on Rails and start my blog www.lorrydriveloper.com which, I hope, will be up and running soon.
That's a wrap. I hope you found this interview helpful and useful.
If you enjoyed this one, I think you might enjoy the following ones:
And you have to watch this video!
As always, if you have any questions or feedback, didn't understand something, or found a mistake, please leave a comment below or send me an email. I reply to all emails I get from developers, and I look forward to hearing from you.
If you'd like to receive future articles directly in your email, please subscribe to my blog. Your email is respected, never shared, rented, sold or spammed. If you're already a subscriber, thank you.