What it’s like to be a Junior Software Engineer @Explo

Hi, I’m Laura! I started working with Explo as a Software Engineer, just a few weeks after I graduated from Carnegie Mellon, in May of 2022, and I couldn’t be happier. During my interviews, everyone was so friendly and easy to talk to, and that has definitely been reflective of my experience so far. I am so glad that I joined such a great team culture. As my first job out of college, I feel like I am in the perfect environment to learn and grow.

How I ended up at Explo

I knew that I wanted to work at a start-up ever since my junior year of college. A start-up environment is a perfect way to grow as a new grad. There is a unique opportunity to take on more responsibility, influence how the product develops over time, and see how a business is built. It was also important to me, to be on a team and know I would have access to mentorship, so joining Explo 2 years into its growth was the perfect opportunity for me. I heard about Explo from a friend who worked there for 8 months and recommended that I apply. I had a week of daily interviews, three being technical, where I had an opportunity to meet every member of the team, and showcase how I approach solving problems, and the others a chance to just chat with people on the team. When I received my offer I was ecstatic.

What does Explo do?

There are lots of companies that need to be able to share personalized data with their many customers. Instead of these companies needing to take months and spend a lot of money on engineers to build out this functionality from scratch, Explo provides a product that you can subscribe to use that allows non-engineers to very easily connect their datasources, run a simple query, and build any kind of graph they want via just dragging and dropping, and Explo will generate the snippet of code that our users can copy and paste to embed into their own products.

Onboarding with Explo

The onboarding process went very smoothly, and when I needed help, I felt comfortable messaging anyone. It took me two days to set up everything, and start working on my first starter task. I had a nice introduction to the code base with tours from a few different people, and my first couple of tasks were much more scoped out for me so that I could primarily focus on getting familiar with the codebase. My first few tasks included smaller frontend tasks like adding formatting capability for chart legends, adding a configurable default value for some input, enabling editing the names of new schemas, adding tooltips for columns in data tables, fixing some bugs, etc…

The first task that really challenged me was my first backend task, to implement CSV downloads for ClickHouse databases (assigned about a week and a half after I started). Initially, I was taken aback as I had never done something like this before, and was also less familiar with the backend in general. I remember initially looking into how we did it for other databases and noticing a lot of differences, and I didn’t really understand what was going on in any of them. I initially tried my best to understand how we did it for PostgreSQL, but I realized I needed help, so I set up a meeting with the engineer who had written the code to talk about it. During our meeting, I found out I need to configure an S3 bucket to store the downloads. This was something I would also need help with, so I reached out to my mentor, and we did it together. In order to complete this task, I had a lot of back-and-forth dialog with my both my mentor and the engineer I had met with.

Working with my Mentor + team

When it comes to tackling challenges and working with a mentor, good communication is very important to learn and solve problems effectively. This is something I really learned working as a teaching assistant for one of the computer science classes at Carnegie Mellon. It was much easier to help my students when they told me: what they understand about the problem, what they have tried/what their initial thoughts are, any specific questions they had, and what their ideas are (if any) about why things are not working. In addition to this, I found writing this out for myself, sometimes helped me solve my own problem, so there were many times I drafted this kind of outlined message and never had to send it. There were also many times I did outline this kind of message and did send it, which is great because it meant I was truly stuck and had a great opportunity to learn.

My mentor, Ignacio Torras, has been an invaluable resource to me, as my go-to team member when I get stuck with an issue. He is also the person I go to when there are multiple ways I am considering approaching a problem, and I need some guidance weighing which solution may be the best approach. Having access to a mentor has really helped me to grow.

However, not only do I feel support from my mentor, I feel like everyone on the team is eager to help me when I ask. I feel incredibly lucky to have such a great group of engineers to learn from and to feel like they care about my growth. It’s how my team members so thoughtfully respond to my messages and how carefully they review my code that I see how much they care. Another great way I learn from my team members is through their code. It’s a good opportunity to ask questions about things I don’t understand.

First time being on-call

When I first heard I was going to be on call, my heart stopped. Just kidding :). I was only 5 weeks into working with Explo, and I did not feel prepared for such a responsibility. Very soon after though, I learned that I wouldn't be alone, and I had the support of two other designated engineers. Now, on-call seemed like a great opportunity to take a stab at customer support issues and understand how we do deployments. When I was pinged to help out, I did my best, but there were times I didn't know where to start, and I was glad to be able to learn from the other two on-call engineers that week and see how they started to debug the problems I didn’t know how.

First Explo Colocation

Before the Colocation, I had met a few team members in person during the two months I worked out of our San Fransisco office, and I had met one of our members who was based out of DC, where I live. During our colocation to Park City, Utah, I got to meet the rest of our team including the New York office and our distributed members. I had a great time being able to work alongside our team members during the day and bond in the evenings.

Prior to the colocation, my primary source of getting to know my team members outside of my current location was via team hangouts and one on one meets. Getting to know your team members is so vital because it provides a sense of community. This inspires me to work harder because it reminds me how much I care about our team and our mission, so of course, I want to do the best I possibly can.

During the Colocation, I had so much fun, because I was able to form a much deeper bond with everybody from being together on a work vacation and having opportunities to have random conversations, play games, refine my ping skills, form a little band, go out to nice dinners, etc… I am so glad that I had this kind of opportunity with Explo.

Why Explo Has Been a Great Fit for Me

Explo was the right start-up for me out of college, and let me explain why. First, I get to work with an incredible team that I have an opportunity to know on a deeper level because of the culture that we are able to have on a small team that values everyone taking the time to catch up regularly and form bonds at our co-locations. The team truly inspires me and I look forward to working every day. Second, working with Explo has encouraged me to grow and take leadership. I have been empowered to share my opinions, take action, and lead change. For example, when I found a part of our product to be confusing, I outlined all the potential problems I saw and drafted a couple of different solutions, and presented all of this in a meeting where we refined my initial ideas. Then I was able to work directly with our designer to get the mocks out, scope the engineering lift for the tasks, and split them up between another engineer and myself. Finally, working at Explo has allowed me to understand better how a business is built, in terms of customer acquisition, marketing, and building a team. I love that I am able to connect with our business team and our founders because it gives me a fuller picture of how Explo is doing and a much better understanding of something I didn’t know anything about beforehand. It has also been really interesting being able to participate in the interview process. I really enjoy that I am able to learn so much at Explo, beyond growing as an engineer. I am so so glad to work on such a great team and I enjoy and look forward to working with them every day.

Final Advice

I have had a great experience as a junior engineer at Explo. My piece of advice for any new engineers starting out their career is to look for a company with a great team culture. Not only will this be a great environment to grow, but you will also be inspired and look forward to every day that you get to contribute to the product.

Back to Blog

Recent Blogs

Get Started Now

Creating dashboards and reports for your customer has never been easier. Find out how Explo can work for your team.