I’m writing for the first time on the ProductPlan blog! Long-time reader, first-time writer. I’m currently a remote Lead Software Engineer at ProductPlan, where I head up a team of four engineers focused on bringing you List View, among other things.
Our team is distributed throughout the United States and Central America, making my workday out of San Luis Obispo, CA unique from our in-house colleagues.
I’ve been a part of ProductPlan for over a year now and am excited about how we’ve approached remote team-building. My time here has been unlike anywhere else, which is rooted in the focus on communication, alignment around projects, and the transparency from our leadership team.
A Day in the Life of a Lead Engineer at ProductPlan
Working here is pretty special. So, what does a Lead Engineer at ProductPlan do in a day?
Here’s a look into my Thursday.
Morning activities
8:00 am:
The alarm goes off and I immediately hit snooze. Half of my team members are a time zone ahead, so they’re already up and working off our team’s backlog before the other half arrives.
8:15 am:
Snooze again. Luckily, my commute is right around the corner.
8:30 am:
Rise and shine. Now, my baby is awake! I get this time in the morning to bond with him while I make a cup of coffee before my wife takes over.
9:00 am:
I’m sitting at my desk. Crack my knuckles, and the workday begins. We use Slack at ProductPlan. I add the :coffee: emoji to our Slack’s #development channel. Our entire development team does the same. We find this to be an easy way to indicate when we’re all available, especially with overlapping time zones.
Next, I go into my personal Trello and organize my to-do list for the day.
9:15 am:
Time for our team stand up. Here’s where I attempt to make a joke in the morning, it’s challenging with the caffeine just barely sinking in. But our team is benevolent, and I get a few chuckles. Our stand-ups are timeboxed to 15 mins.
9:30 am:
At this point, we’re all logging into Zoom for our All Team Retro. It’s an opportunity to give shoutouts, explain what went well, and learn what didn’t go well to better pinpoint what we could improve on as an engineering team.
At ProductPlan, I’ve come to appreciate how much we embrace being “judgment-free.” This enables us to spend time reviewing the wins and losses as an entire engineering team. We’re not a huge team, so we still make the time to do this.
We always try to derive some action items from this meeting. Then it rolls into Part 2 of the meeting with the same attendees.
10:00 am:
The next part of our All Team meeting is All Team Planning. Myself and other team leads demo what was just released. I like to use this time to “eat our own dog food” and showcase new features we built within ProductPlan. For instance, I use List View to effectively show what we have in store for the coming sprint.
I like to use the Sprint style because I can see our sprint start and end dates. I use Legends to differentiate our Sprint Goals vs. our Stretch Goals—this is nice to have and use as a reference to review past sprints.
Here’s what it looks like:
Yesterday, I used this same view to pitch what we’re planning to product and engineering stakeholders. I synced up with our Director of Product Management (Annie) and SVP of Engineering (Mark) to agree on which projects align with the business goals for the given sprint.
Once they share their feedback, I guide my team with Mark and Annie’s input from our earlier conversation. I love to emphasize that my team helps create the pitch, which goes a long way in building motivation.
In today’s meeting, I am presenting my team’s upcoming sprint to the other engineering teams. I value this time when all the engineering teams come together and have the ear of our CEO (Brad), Annie, and Mark.
We do a great job of having one single source of truth, and that’s ProductPlan. We’re not scattered between a Google Doc here and a Powerpoint there. My team can see this, and my boss can see the plans at any time.
Then I sit back and listen to the other engineering teams present their plans.
10:30:
Time for headphones and VSCode. Today is a high context switching day, so let’s pick up a low-hanging fruit item.
11:30 am:
Time for more coffee. One cool thing that we do to forge relationships with the team are virtual coffee breaks. These are especially important since we don’t have the opportunity to chat over a water cooler in a remote setting.
Once a month, we are randomly paired with another co-worker for 15 minutes (but often the conversation rolls into overtime) and given a prompt question if we need it. It’s a great way to learn about other departments and build your network.
12:00 pm:
It’s lunchtime! I grab a bite with the baby before he takes his afternoon nap. I play with our dogs and try to get out and get some fresh air.
Afternoon activities
1:00 pm:
Once I’m back from lunch, I hold a Project Kickoff with the team. In the background, my dog is barking at the mailman like clockwork.
With every Project Kickoff, I like to start with “Why?” and “What is the problem we are trying to solve?” I’ll leverage our customer feedback board in Trello to pull customer quotes that reinforce the customers’ voice and put them first when trying to solve the problem.
The better I can convey this message to the team; the more successful the project will be.
3:00 pm:
ProductPlan’s most recent Book Club has been going on for a few weeks. We meet once a week to discuss the chapter we read and answer the questions seeded beforehand. It’s a fun way to collaborate with people outside my team and talk about things that aren’t necessarily tied to the product.
We’re currently reading Crucial Conversations: Tools for Talking When Stakes Are High. If you haven’t read this book yet, I highly recommend it!
Coffee Breaks and Book Club are just some of the great remote team bonding experiences at ProductPlan. I also get a kick out of some running Slack channels like #pets, #parents, and #battlestations.
4:00 pm:
Headphones back on! I set my Slack status to “In the zone” to indicate to my teammates that I may not respond to any messages for a bit. Let’s close this pull request from earlier!
6:00 pm:
What a day. Before I wrap, I like to post an end-of-day status in Slack. This consists of what I did for the day and any requests for code that needs to be reviewed or tested. The rest of the team does this as well, which helps us easily resume in the morning when we’re spread out across different time zones.
Time to start making dinner and enjoy the rest of the night with my family!
Takeaways
The days where we are not planning out the next sprint benefit from being more focused. We strive to have as much asynchronous communication as possible and minimize meetings so our engineers can get into the zone.
At ProductPlan, every engineer has a say in how we should go about solving a customer problem. I find that being close to determining the solution is highly motivating for everyone involved. We index on team-building opportunities since remote life can be challenging and encourage people to step away to prevent burnout. We’re all here to support one another and help each other out, this is an example of one of those days. If this sounds good, then you’ll be happy to know, we’re hiring!