Life On the Roadway

ENPT

I just left Roadway, or to keep the metaphor, entered the city (that was terrible, lol).

This post is about my time at Roadway, what I learned, how it was and how it changed my life. There are 4 guiding principles as I write this, the first is my experience in general and how I want to look back on it, the other are 3 questions that Sham asked me as food for thought: 1) What’s something you’re proud of; 2) What’s something that surprised you; and 3) What’s something that you want to do better in the next chapter. So let’s hit the Roadway again, this time in my mind, pee and poop now while you can cause the next stop is far and we’ll take it slow and enjoy the trip.

Chapter 1: The Roadway

If you’re reading this you probably know what Roadway is, but if you don’t take a look at the website. On a high level, Roadway is a growth marketing automation AI company, and probably the coolest project I’ll work on for quite a while. When I got in the car it was a pretty small car still, Tim Dalrymple on the wheel, Sawyer Kisken on shotgun, Sham, Ricardo Nacif and Pedro Mordente making things happen behind the scenes. It was a little scary to join the team as I was coming from a hiatus on my software engineer career and a terrible previous job that left me burnt out and didn’t add much to my technical skills.

The story of how exactly I got there is kinda funny so let’s quickly get into it. I did an internship at Educando Seu Bolso when I was in college, and there I met Guilherme Vaz. He invited me to work with him again in another project when I graduated (the job that burned me out, lol) and we were a very good duo. That got him to recommend me to his friend, Lucca, who recommended me to Ricardo. In my internship I worked with python so Ricardo put me in the Roadway project, as it was a python project. The month before I joined Ric’s company I had 1500 bucks on my account, a credit card bill of 1500 to pay and a dream, lol. Timing was more than perfect on this, all thanks to the universe and it’s randomness.

So here we are now, I’m in car with the guys, on the Roadway, Tim is going pedal to the metal (looking back I think this is one of the things that actually made the project work and get far) and there are a million things to learn.

Chapter 2: Picking up Speed

The first miles were quite uncomfortable, as I mentioned before, my technical skills were rusty so I had a lot of catching up to do. On top of that I had a terrible home office setup, basically a bad chair (which accompanied me for longer than it should), a warrior Thinkpad t440p bought second hand and an old old square monitor from around 2010. I had used this equipment in the previous job and I didn’t realize how uncomfortable it was until I actually got an upgrade to having a proper monitor and keyboard (should have upgraded the chair too, lol, but my dumb self thought it was too expensive and would make no difference). Maybe this was my first learning there, ergonomics actually matter, and if I’m in pain because my chair sucks and hurts my back and my monitor is low so it hurts my neck etc it does affect my work.

So by now we are a few miles in the Roadway and I’m learning how to work in a team again and getting comfortable with the pace of the project. This is where the drive was smooth, the scenery is beautiful and I start feeling like part of the team. This is a good place to talk about question number 2: What’s something that surprised me.

Right from the start I got surprised by the set, Tim was the growth marketing guy at Notion, yes, fucking Notion, holy shit. The surprises did not end there, and actually only got bigger. We got some crazy big customers, million and billion dollar companies used our product, the product that I was helping build. That is insane, even now looking back on it. I feel very honored and lucky to have been a part of that and to have had that opportunity. I won’t mention specific companies here because I’m not sure I can, lol, but just know that your grandma heard of some companies that were/are our clients.

A few miles later the second big surprise would hit me, there was an unexpected stop planned in this Roadway, we were all meeting in Lake Tahoe! Now, I always wanted to travel for work, but I never actually thought it would happen. Working as a Software Engineer, from home, I couldn’t see much reason for travelling. So imagine my surprise when I actually went there, to Lake Tahoe. This happened on November 2024, not even a year after I joined, still hard to believe to this day. I don’t even know how to describe this, it was/is magical for me. Anyways, we had a blast, everybody is super fun to be around. The very very sad part of this is, Pedro’s Visa was denied so he couldn’t go with all of us. To be honest I feel like it was unfair that I got to go and Pedro didn’t. Pedro was/is the MVP, he pushed things forward fast and perfectly. This got me thinking about how things are in life, and shit is not always fair for reasons beyond my comprehension, all I can do is enjoy, be concious of how good I have it in life and be grateful for all that I got to live, even when I feel like it’s not fair.

Chapter 3: Cruising

This kinda marked the start of the my best time at Roadway I think. I was comfortable with the challenges of the project, I was hyped with it, things were going super well for the company. I felt like a disciple of sham, lol, I was picking up data modeling work from him and learning a bit of data engineering. I actually like it, feels like a puzzle and it’s fun to solve. Now, at this point in the Roadway if you look to your left you’ll see the answer to question number 1, something that I’m proud of.

There are actually multiple things we can see over there, the first and more obvious thing that stands out on the view is the Attribution Manager or Measurement, or whatever the hell it is called these days, lol. It is a bit complex so let me explain what you’re seeing. A big problem at Roadway was managing the attribution rules, the rules that categorize from where a visitor came to the website, for example, if a visitor had utm_source=facebook in the url we knew they came from Facebook ads, pretty simple, but there are many rules, some can get complicated, and it can change. So it was a burden on the four of us keeping the engine running, one more thing to do and that wasn’t really our responsibility to manage, it was the customer’s. With that problem in mind I built the Attribution Manager, it’s a feature that parses the SQL code which describes those rules (we had a default that customers would inherit and then customize) into an AST, ships that tree to the front end where it parses the whole AST into an object that can be manipulated in a form in the website, keeping the constraints that we wanted to keep and not allowing for things to break. After changes it would then rebuild the AST and ship it back to the back end for the SQL to be updated and the rules applied. This was so cool to build, such a fun challenge to work on, and it turned out great, it helped debug weird rules, update them and catch attribution problems, it was a nice access to the rules that once could only be seen in 300+lines of pure SQL and updated by writing more SQL.

Right by the side of the Attribution Manager you’ll see some other smaller things, let’s start on the one to the right, the data refactor and optimization. This one is kinda hidden, not so easy to see, but it was a fun one and I feel like I did a good job at that. So, the thing is, some of our customers had a lot of data, and wanted to see it broken down by many groups, so the payload got really big and was breaking the limit and crashing the page. I took a deep dive at that and found some quick wins to optimize and what was harder to do. I tackled those quick wins, which were basically compressing the data in the DB, compressing the payload of the API, changing the pandas shape from a JSON like object to something more CSV like (one header multiple rows instead of one header per row like JSON is), and using web workers to load the data. This reduced the payloads by 1.5 to 2 times, so we had a good speed up and the web workers guaranteed that anything big would not crash the page. The harder to do stuff I just took note off and wrote it down in a plan for picking up when we had the time available.

And I’m sure there are many small things I’m super proud of that I can’t really see from down here on the Roadway, so the last one I’ll mention is the one more to the side, a little more separated from the other two, the demo dataset generator. Oh boy, I inherited a very very messy jupyter notebook that generated our data for the demos and had to polish a lot and make it work a lot better. It was very stressful because of how messy it was and some things there took forever to get right, but somehow I managed it. When I started working on it AI’s really sucked on jupyter notebooks so I couldn’t really use them and everything was done by hand, a lot of tidying things up and fine tuning numbers to get the charts just right for Sawyer. On this one I’m more proud of how I handled it than of what I actually accomplished in the end. This is one of those problems that stays in my head long after I stopped working on it. Hell, to this day still I think about it and I consider taking some time, now with LLM’s, to write the code I wanted to write but didn’t have the time back then. Who knows, maybe in the future I’ll get back to this just for fun.

Chapter 4: Not feeling so good in the car anymore

So, now that we’ve been here for a while, no stops, always on the rush, it got me, can’t lie. I started feeling demotivated and in the beginning I didn’t understand what it was, I thought I was dumb or had no discipline to focus on work on study more but at one point I realized that discipline wasn’t my issue, and I wasn’t dumb (although my friends will tell you otherwise, lol). I just had the discipline to train and run a marathon in 8 months, from no running to a 4 hour marathon (04 hours 03 minutes to be precise), so discipline wasn’t my problem. I also did very well sometimes in work, when something would get me hyped again, so dumbness wasn’t the issue. After a few months like this I realized what it was, it was time for a stop, and going slower, I was worn out by the frenetic rhythm of the drive. And don’t get me wrong here, this crazy rhythm is what got Roadway far, but it just wasn’t working for me anymore.

And right now looking to your right you can see a bit of the reason why, which is also the answer for question number 3, something that I want to do better in the next chapter. You’ll quickly notice that I was very anxious about work, and always felt I was too slow or that I wasn’t good enough. This is something that really killed my performance. I got anxious to ship something, tried to do it as fast as possible, missed something crucial because I was in a rush for a deadline that I had invented and after shipping it I would have to fix it and get it right. This loop made me feel like a failure and a terrible professional, it definitely played a big part in me getting tired on the road. And if you look closely at it you can see it’s not just work, I actually do that in many areas of my life. So this is the biggest thing I’m trying to do differently, just understanding that some things take time and that it is okay. I don’t have to do everything in 20 minutes, most times this pressure doesn’t even exist and I’m making it up myself. I should actually just focus on doing it well and if it’s quick it’s quick, if it’s not then it’s correct and I’m feeling good, not like my life is on the line and crazy anxious. On that note, I have been managing this a lot better recently.

However, this is not the only reason that made me leave. That would make me leave any job or task actually. There were some other things in the mix, I think the bigger role here was money actually. I wasn’t making super good money, for the average Brazilian, yeah, it was good money, but for actually having the future that I want, it would take me years of saving everything I was making before I could cash it out for a single decision, and then more saving years and so on. I know this is not the ceiling for software engineers, and actually I found out it was closer to the floor than to the ceiling, I was still on entry level pay despite everything I did and learned. And I didn’t have much perspective of growth in there, as I had to wait for the company itself to grow before I could think of getting a raise or having a different position. That made me realize that for the life I want I need a job that pays better, or at least a job that isn’t as rushed so I can enjoy life a bit more since I’m making less money.

Another big reason you see there on the scenery is that I felt it wasn’t fair to the guys being there and not being 100% motivated. Everyone was giving it all, and I couldn’t give it all anymore, so I felt like it wasn’t fair for me to be there. Also, smaller, but still visible from here, is the calling for something different. I always worked in small teams, super fast paced environments. I wanted to see for myself what life was like on a big bus, that drives slow and has a lot of people. I know I probably don’t fit in as well in a big bus, but I wanted to try it, and usually things are easier to handle there and it pays better, so it seemed like a good place to aim for.

All of that got me looking to hop off on the next stop, and I was fortunate enough to find one relatively quickly.

Chapter 5: The real Roadway is the friends we make along the way

So, now we’re approaching my stop, gotta hop off soon guys. It was a pleasure sharing this trip with you all, we still have a few miles to get there so let me use this time to say thank you to the Roadway guys. Goodbyes are always hard and I cried multiple times thinking and planning the conversations about my egress from the company. It truly was an epic ride that changed my life in so many ways. I think this was the coolest project I have ever worked on, and will probably hold this title for years and years to come. It is wild how crazy of an opportunity it was to work with Tim, Sawyer, Alex, Pedro, Ric and Sham, in a company that has such a powerful product and clients that are some of the biggest companies in their areas and that I never thought I would get close to. It still feels magical that I got to travel twice to the USA to work in person with the team, and I got to go to so many cool places and great restaurants (I’ll never forget the sushi I had with Ric at Shizen in SF, it was top 3 meals I’ve ever had in my life) and live things I never thought I would. I am truly grateful for having this opportunity, and that the universe somehow got all of us together in this time. I consider all those guys not coworkers, but friends.

Of course, all of this makes this good bye very sad, but I’ve got new roads to go and places to be. I’m sure I’ll meet the founding team from roadway again in the near future and I very much look forward for it. For now, I’ll treasure these memories and use what I learned there for helping others and living the future I want.

Looks like we’re arriving, better pee and poop now guys, you never know when nature is gonna call and the next stop might be far. I’ll be staying here for a while, see you soon and love you all :)

↩ Início