DEV Community

Hugo Marques
Hugo Marques

Posted on

10 years as a professional developer.

On December 8th 2018 I did 10 years as a software engineer. This post is a collection of my memories and learnings along this time.

A long time ago, 10 years ago to be precise, I used to live in Brazil. I had just been hired as an intern at a multinational consulting company. Our branch office was pretty small and my main job was to support and fix bugs in a Telecom service. My proudest moment was when the service couldn't process a customer order to create 31,000 new lines. The processing was timing out. I discovered the issue was caused by two nested loops. I was able to refactor the code to extract the 2 loops and thanks to that we were able to finish the processing. Why was I proud of it? It was the first time I used algorithm analysis to solve a real-world problem outside of college. The best lessons learned at Accenture were how to communicate and work together with different people.

Between 2010 and 2011, I moved out from my hometown, worked in 2 different companies in less than 7 months and moved back to hometown to work at Accenture again for the entire year of 2011. At that point, I was really disappointed with my career mostly because I was working on CRUD applications with no learnings or interesting challenges.

In 2012 we moved to Brasilia, Brazil's capital, where there were lots of contractor jobs for Java Developers like myself. There I got my first job as a contractor. It was a new beginning and I felt refreshed to start investing in my career again. That year I took 3 Java certifications exams (Java Programmer, Java Web Developer, and Enterprise Java Developer) and 1 IBM certification (Object-Oriented Analysis and Design). I did hibernate/JPA training and became the expert on my team about ORM. I was mainly working with Java EE stack and Flash ActionScript (RIP). It was also around that time that I got interested in Clean Code, Coding Best Practices and Software Architecture in general.

In 2013, I moved to work in a startup and that really didn't pay off. There was a clear mismatch between the CTO expectations and my own expectations. Two lessons learned from that period:

  1. One lesson learned here: never work in a family business where you are the outsider;
  2. Always align your expectations upfront.

On that same year, I moved to a contract in the Brazilian Ministry of Education. I loved that new job. I worked on a project that allowed Brazilian students to go study abroad as the main owner of the reporting module of the system. I was doing requirements, design, development, testing, and monitoring deployment. On that job, I learned to have ownership of my products.

Then in 2013, I got an email from an Amazon recruiter to join an Amazon hiring event in São Paulo - Brazil. I joined the hiring process thinking I had no chances, I was never that good with algorithms but impostor's syndrome aside I decided to try and move forward. For the next 3 weeks, I spent day and night solving questions and revisiting all data structures and algorithms I thought it would be useful: lists, trees, sets, maps, sorting, searching, graphs. Long story short, I passed the hiring loop and I got an offer from Amazon to come to Seattle - WA in October 2014.

Since 2014, I've been working at Amazon. I've worked in 3 different teams so far: Amazon India, Customer Reviews and now AWS Builder Tools. At Amazon, I learned all kinds of interesting stuff: how to look at metrics, how to do monitoring and alarming, how to orchestrate and deploy solutions that communicate with multiple services. There, I was able to write my first API that would be consumed by millions of people worldwide and I wrote and read code in all kinds of different languages. Nowadays, at AWS Builder Tools and I build the tooling that helps Amazon engineers to be more productive and delivery solutions with more quality.

That's the 10,000-foot view of my career. From an intern in a small office in my hometown to a software engineer at one of the biggest tech companies in the world. I hope this article helps other people inspiring them to try and find their own path.


Top comments (7)

fabiowebdev profile image
Fabio Ferreira

Very nice! I am brazilian too and I have some friends working at Amazon as well. I've been working for online 1 year now as a front end engineer. I speak good English and I wish to work abroad eventually. Cheers!

olivermensahdev profile image
Oliver Mensah

Interesting journey. How was your journey into Amazon like? Did you had to take a look back at your Computer Science basics?

hugaomarques profile image
Hugo Marques

Definitely, I was rusty with Computer Science basics and I had to revisit them in order to prepare for my interviews.

robertocapannelli profile image
Roberto Capannelli

And back then Did they really ask about CS basics? :D

aazerot0113 profile image

Thank you for sharing this information. It was really helpful and inspiring. I'm from Mexico, and I'm currently working looking for a job in the US. Could you give an advice of how can I land in a technology US job? Thank u.

hugaomarques profile image
Hugo Marques

When I was in Brazil I was already planning to immigrate to Canada. Because of that, I did all the courses and took the certifications I mentioned in the article. I don't think I was called to the hiring event exclusively because of those alone but due to the combined experiences and knowledge, I detailed at my resume.

Nowadays, I would focus on getting a bachelor degree in CS or display similar knowledge through projects, portfolio, bootcamp. I would practice CS fundamentals through problems at sites like freecodecamp and codewars. Finally, I would keep applying not only for the US but for other countries "easier" to get a VISA like Canada, Ireland or Germany. One mistake I did back in 2014 was that I didn't consider myself good enough to apply to companies outside of Brazil. Amazon showed me I was wrong. Maybe, if I had applied I could already be there in 2013 or sooner!


david_j_eddy profile image
David J Eddy

Inspiring; thank you Hugo!