A Day in the Life of a Software Engineer at KeepTruckin

Usama Mahmood
motive-eng
Published in
7 min readApr 2, 2021

As Experienced by a Software Engineer in Lahore, Pakistan

Coffee in hand, I begin by messaging our team’s Slack channel, signaling my remote “sign-in.”

In many movies, a software engineer sits in a dark room, writing thousands of lines of code a day, only looking up from their screen to sigh heavily at an unwelcome interruption. My days at KeepTruckin are nothing like that. In fact, no two are exactly alike.

I now set myself up for the day: confirming stakeholder meetings, checking emails; this inevitably leads me to Jira, where I address any pending or open items. I always keep an eye on Slack in case my input is needed.

A few minutes before our daily stand-up, which we hold at noon, I review and prioritize the tasks assigned to me. I love the brevity of these daily syncs; they last no longer than 20 minutes. Now that we are working remotely, these are more significant than ever.

The rest of the day is for deployment, pushing tasks to production. We take turns deploying code, thus sharing both the opportunity and responsibility. Every team member then verifies the changes in production and carries out any post-deployment work required.

After stand-up, I may attend meetings of different flavors. As I said, no two days are alike.

Focus Time

You may be wondering, “Do you even code?” Why, yes! In some manner, my days do revolve around code. When not writing new code, I am reading it. In our development process, each task that changes the codebase requires the whole team’s review. The benefits of this are threefold: our code is thoroughly reviewed, new hires have an opportunity to learn, and every developer on the team is kept abreast of all changes. I review pull requests before doing any of my own coding so that my teammates are not hindered.

My own code-related tasks depend on the stage of a project. I may use my time to make a detailed timeline or plan the architecture for a new project, always synching with appropriate team members. For an advanced-stage project, I spend more time honing the details, testing my code, and incorporating comments from my pull requests.

Outside of such tasks, on occasion, I do find myself configuring new tags and triggers in Google Tag Manager, verifying or debugging goals and events in Google Analytics, setting up A/B tests with Google Optimize, verifying submissions in our lead management tool, Pardot, or setting up new pages on our website. These code-adjacent activities make for a nice mix.

Displaying “Away From Keyboard” is key during remote work; proactive communication and expectations prevent us from leaving people hanging.

The Fun in Working Remotely

We have been working remotely since March 2020, which describes my entire tenure at KeepTruckin, save for one month. As the company has adapted to a “remote first” work environment, I have been impressed by the work-life balance and continued levels of productivity through our teams.

Structure Your Day Your Way

Different from my past experiences, the advantages are clear. Given that our engineering teams work across global offices at all hours, there is a bit of autonomy that comes with creating schedules. In my flow state, I personally enjoy working late hours, when it is quieter. Some of my teammates find early mornings more effective for their assignments. KeepTruckin encourages us to create schedules that work for both our professional and personal lives.

Leaving Room for Connection

Surprisingly, working from home does not eliminate the spontaneous element that we previously enjoyed in the office — the unstructured water-cooler chit-chat that enables us to connect with our colleagues. We still enjoy it, although in a different form. Our team has occasional, virtual “chill-out sessions,” dedicated to relaxed banter. Sometimes a five-minute working sync turns into a social activity with a colleague. Other times, we stay after a meeting to blow off some steam, and some of our daily stand-ups turn into fun if we finish early and break into good-natured conversations.

Why KeepTruckin?

KeepTruckin put me through the most thorough interview process I have yet encountered! It was also the best, as it was an experience in itself. The interview process revealed that the company, the role, and the candidate (myself) all suited each other.

In my career, I want to make an impact while learning something new every day. I don’t do well with stagnation or repetition; I am always seeking a challenge. Like many, I also do not like to be micromanaged, and thrive in various sorts of freedom, be it flexible working hours or having complete ownership of a project. I am straightforward when I don’t know something, but feeling judged for it hinders my creativity.

After a year at this company, I can confidently share my answer to the question: “Why KeepTruckin?” It’s the workplace culture. I cannot emphasize this enough. When I first joined, I didn’t fully understand the importance of organizational culture in an individual’s peace of mind and productivity. Now, I understand its value.

The Culture

What makes KeepTruckin culture so awesome? For someone with relatively limited work experience, the onboarding process was key. Not once during my onboarding did someone ask, “Don’t you know this already?”

If I didn’t know something, the only response was,

“Let me help you.”

This in itself is priceless because it boosts your confidence and gives you the fearlessness to grow.

Does all this patience and room to grow end up slowing down projects? Not exactly; growing your skill set is important at KeepTruckin. When you do, the next time a similar project pops up, you can hit the ground running. Those extra few days spent studying equate to a long-term investment.

In addition, our timelines are driven from the bottom up, meaning that my manager and I discuss the project’s importance to the business and scope it beforehand. We try to avoid delays through careful estimation and with proactive communication — remember this goal? , It boils down to, “Delays are OK; surprises are not.” Our team synergy encourages full transparency during projects; we actively adapt our approach to guarantee strong results.

A Step Out of My Comfort Zone

If you’re beginning to think that it’s nothing but sunshine and rainbows, recall that no two days are alike at KeepTruckin! One example that springs to mind: when I was asked to create a “pseudo” shopping experience for our users. This included several challenges: it had to be created without a backend, and still be backend-compatible so that we could integrate payments in the future. In addition, we were to run it as an A/B test, and thus code it in a test-friendly way. The biggest challenge was creating a shopping-cart experience without a state management tool.

This was the first big project where I took the lead, and I required a lot of guidance. I bounced my ideas off my tech lead and senior engineers, and they welcomed my questions. The close collaboration involved not only engineering, but also product (who worked with us to ensure a decent timeline by prioritizing the features), marketing operations (who ensured that leads were handled properly under the right campaigns, to provide a scalable solution for integrating payments in the future), and design (who simplified the design wherever possible to reduce design execution complexity). This project lasted over six weeks; its execution complexities and constraints, together with intense cross-team collaboration and managing the stakeholders, constituted my greatest professional growth experience. Every day at KeepTruckin can be an opportunity to learn and flourish.

Equal Chances for Everyone

Lastly — and this is important! — there is no discrimination here. At KeepTruckin, we go above and beyond the standard: we work to eliminate bias based on job titles, educational histories, or linguistic or cultural backgrounds. Even as an entry-level engineer, at no point did I feel like I was treated differently. My tech lead listened to me the same way he listened to a senior developer; what I had to contribute was given equal importance.

In another instance, a team member wanted to learn our deployment process, which was exclusively owned by the tech lead. I loved that the entire group received training, including me, the youngest developer on the team. I similarly had the chance to shadow interviewers during our hiring process and then become an interviewer on our hiring panel. I’ve even had the chance to mentor new hires, which has been another rewarding experience.

In the End…

Thanks for spending the day with me! As you can see, the days of a KeepTruckin engineer vary, keeping work stimulating and challenging, so that I, for one, am always learning. At the same time, my days are predictable in the most important way: I know my teammates and I will always keep each other in the loop, I know my management will help me grow, and I know I will love my work.

About Usama

I am a Software Engineer working on the frontend for the KeepTruckin Growth Engineering team. Our team develops marketing and growth presence on the web, which includes the KeepTruckin corporate website, marketing campaigns, and email campaigns — not to mention the growth flows within KeepTruckin’s web app.

We collaborate closely with various internal stakeholders, implement the user interface, and engineer the experience of the site and of the KeepTruckin software. We also continually evaluate emerging technologies and make use of strategic, innovative, and cost-effective solutions that increase the efficiency and reliability of KeepTruckin’s sites.

Enjoying our blog? Follow us to keep up with our latest stories. Check out our Before You Apply page to learn more about our engineering team. And…

Join Us!

Be a part of our team! Check out our open positions on our Careers page.

--

--

Usama Mahmood
motive-eng

Love tech, sports, and programming. Software Engineer — Growth Frontend @keeptruckin-eng