Visor Engineering Culture Spotlight: Patrick Shanley
We know how important culture is to prospective team members. That’s why I sat down with our Principal Engineer, Patrick Shanley. Because Patrick has been working at Visor since its founding, he is not only an architect of the product – he also shapes Visor’s team culture.
With Visor adding so many new team members this year, we wanted to provide helpful information about what it’s like to work here. During this conversation, we cover many topics, such as how we approach remote work, how often we ship, and how many hours engineers can expect to work.
Here’s our conversation, edited for brevity.
What motivates you while tackling product features and improvements for our users?
I’m motivated for two main reasons:
- I see the impact of my work. Because we’re a small company, I sometimes talk to users, and they sincerely appreciate what we’re doing. They’re also very tech literate. So they understand the work that goes into improving their experience in tools like Jira. Getting feedback from them is very validating.
- I also resonate with the problem we’re solving. Because different teams often use different tools to accomplish their goals, data has become disjointed. This makes collaborating harder. Visor solves this problem by bringing data together into a trusted, single source of truth.
From an engineering perspective, how does Visor approach solving our users’ problems?
We try to make Visor as non-prescriptive as possible. That’s what allows the spreadsheet flexibility that centralizes our users’ data.
We’re also not beholden to off-the-shelf solutions – we will solve interesting problems by making our own solutions. We don’t go through the motions of creating components in a reactionary or day-to-day way. Instead, the team regularly builds architecture (like CloudStore) that solves unique technical problems. The benefit is we have more control over our ecosystem (and it’s also more rewarding to get to make cool things rather than just piece together other people’s work).
We don’t want a bunch of bloat code from libraries that have billions of installed modules that are useless or slow down load times. We want what’s best for the customer, even if that means taking a bit longer to build it the right way.
That’s not to say we only build our own solutions. We do use Vue as a front-end framework. It ended up working really well with our in-house real-time datastore, CloudStore, because we were able to plug our real-time updating JavaScript objects into Vue. This improves the overall developer experience at Visor since CloudStore handles most of the hard parts of building a real-time, collaborative software application.
What type of engineers does Visor set out to hire?
There are three main qualities that we look for in engineers during the interview process.
Ultimately, we’re looking for engineers who:
- Want to Make a Material Impact: We aren’t just off making widgets. We’re looking for people willing to take a big problem, break it down into big pieces, and offer a v1 that solves the problem for users immediately.
- Are Aligned with Visor’s Vision: We seek out engineers who are excited by the idea of building a centralized place for data. We want engineers who buy into the fact that data is everywhere; they know how chaotic that can be and want to create a better way of working collaboratively.
- Can Architect Elegant Solutions: Because we are a smaller team, we hire team members and team leads looking to architect a new solution for x, come in, and do it. We want to attract people who can tackle a new product design or feature and architect an elegant solution within the Visor ecosystem.
How does the engineering team collaborate remotely?
We shifted to remote work at the start of the pandemic and realized it made us even more productive. Here’s how we’ve adapted our process to fit this new way of working.
Focused Work:
Our general principle is to provide plenty of heads-down focus time with effective use of collaboration tools (Visor, Jira, Notion) and a few short, valuable meetings each week.
Collaborative Work Sessions:
We also have collaborative sessions where the engineers get on a Zoom call, and we all work together. We can even be totally silent. The idea is that if you were in an office and there was an engineering pod of desks, you could turn around and ask people, “does anyone know how to fix this?” We usually do this when we’re all heads down on new or bigger projects.
Q&E Day:
The other cool thing that we do is Q&E (quality and experience) day. The day before Q&E day, we’ll come up with a list of 100 or so small issues that should each take about an hour or less to fix. And we devote a morning to assigning who gets what tasks. Then, we all go off and fix them. By the end of the day, we’ll have 65 or 70 different issues completed. We then do a big deployment at the end of the day, which is very rewarding.
We empower engineers to fix the issues that won’t necessarily increase revenue but do improve the user experience or something that’s bugging them.
Weekly Meetings:
While we don’t have a lot of meetings at Visor, we do have a few weekly meetings. The point of these meetings is to unblock team members and ensure we’re as efficient as possible.
Here are the meetings new hires can expect to see on their calendars:
- Team Weekly Kickoff: We have a kickoff on Mondays to get us in alignment about metrics and priorities for the upcoming week. Team members also have the opportunity to ask questions or share concerns.
- Daily Team Sync: Tuesday through Thursday, we have a 30-minute sync where we share our top priorities for the day and where we need collaboration from team members. We also look at our Project Management board and move tasks along.
- Bi-Weekly Retrospective: We meet as a team every other Friday to reflect on our accomplishments. We share what went well, what “went meh,” and what “went ugh.” Then, we discuss our focus for the next two weeks.
- Team Weekly Recap: When we aren’t meeting for our Bi-Weekly Retrospective, we still meet on Fridays to recap our week.
How many hours a week, on average, do you expect engineers to work?
I have a 12-week-old baby at home. So I know how important work/life balance is.
We’re not one of those startups that don’t respect people’s personal time. With that said, we do have ambitious goals. So you can expect to work 50(ish) hours a week.
We also encourage employees to go and take care of themselves and enjoy their life. That’s why we offer semi-flexible hours and unlimited PTO. It’s even part of our quarterly performance reviews – our CEO expects everyone to be taking care of themselves physically and mentally, and it’s encouraged to periodically take time in the middle of the day to take walks, hit the gym / yoga studio, or nap / meditate.
How often do we ship new improvements or features? And what’s your philosophy about velocity?
We aim to get project releases out on a weekly cadence (whether it’s backend, frontend, or both). It helps keep customers engaged because we continuously update our users about new improvements. Some weeks have seen us ship to production three times.
We like to visualize the size of different engineering projects as bowling balls, marbles, or sand. If you imagine a bucket you’re trying to fill, if you only put bowling balls in the bucket, you can only fill 1.5 bowling balls. But there is a lot of space to fill with marbles and sand.
So if you have a big project that takes 90% of your time on a big project, you should still spend 10% of your time on usability projects or other issues. That’s how we can maintain our velocity and get projects released on a cadence that impresses our users and shows them that we’re always improving the product.
What would you say to an engineer considering joining the team?
If you get energized by working on projects that have a material impact on people’s lives, you’ll like working here. We regularly hear from our enthusiastic users about how much time, effort, and money we have saved them.
Also, if you have an appetite for working on bigger projects (and not just small components), then you’ll find working at Visor very fulfilling. We encourage engineers to tackle and architect solutions to substantial projects. With that said, we’re committed to empowering our engineers. So go and fix the issues that bother you the most. We’ll applaud that, too.
Lastly, we’ve put so much thought into how we want to treat one another, conduct meetings, and drive efficiency. We welcome people who bring in new ways to improve upon our foundation. Because we’re a small (but mighty) team, you’ll make an impact beyond what you code. You can help shape the culture we’ve developed.