We deploy many applications on any given day.
We didn’t used to though. In 2015, when Plastiq first moved from Boston to San Francisco, we had a 2-week development cycle followed by a 3- or 4-day feature testing and regression testing cycle that would culminate in a dreaded Thursday night release. It wasn’t a great development environment and we made it a priority to improve.
We automated application builds, enabled working unit tests, and created a simple end-to-end automated regression suite. We next automated our deployments to an integration environment. Today, we’ve completely disabled our QA environment and consolidated all of our non-production environments (our integration environment is our QA and staging environment all in one!).
At Plastiq, we also use the Trunk Based Development model which means that we commit directly to the master branch. Builds and deployment are automatic and then unit, api and end to end tests are run. We are now moving toward continuous deployment so that our commits to master will be automatically deployed to production.
You can learn more about where we started and where we’re headed here.
Safe Environment to Fail
If we’re not extending ourselves to where we might fail, we’re not challenging enough.
The default for most startups is failure, so in order to fight against those odds, we need to push ourselves in ways that will feel uncomfortable at times. We learn a lot more from failing than we do immediate success (where you often pat yourself on the back and not truly understand why you succeeded). With this in mind, we run a lot of experiments and A/B tests with the expectation that more than 50% will fail. As Thomas Edison said, “To have a great idea, have a lot of them.”
When we asked Yi Sun (one of our engineers) how he’d describe our team, he said, “Success on the engineering team means not being afraid of failure. The team leadership truly supports an environment to fail. That might sound crazy, but if you are aiming to never fail, you are not getting out of your comfort zone. When you have confidence to try new things no matter if it fails, you are on a path to innovation.”
As a small and growing company, engineers have great flexibility to choose what they work on and are given the space to see them through completion.
When we asked our engineers about the autonomy at Plastiq, Marie Cuddy recalled how she was able to build a marketing application that can email hundreds of thousands of customers within minutes and decides which customers receive which campaign based on live data, all from scratch. This is just one of many examples of the type of end-to-end ownership engineers have at Plastiq.
There is a tremendous amount of variety in the projects and responsibilities we have, and it is common for engineers to change roles and focuses every few months. We believe this enables people to have both depth and breadth as they learn new technologies and build new parts to our system. Engineers often suggest projects that they believe will move the company forward and more often than not, they’re given the opportunity to own them to completion. The leadership at Plastiq is extremely open to team members taking on new tasks, and trusting them to learn as they go if they aren't subject matter experts in those new areas.
Team is Diverse
Quick stats: 58% of the Plastiq Engineering team was born outside of the United States, and 67% are women/minorities.
Our engineering team members have joined us with varied experience levels ranging from 0 years to 20+ years. Our educational backgrounds span from Accounting (one of our engineers is a Certified Management Accountant!) to Design to Engineering Physics to Computer Science. Diversity of experience is incredibly valuable to us as it brings diverse viewpoints that help us create the best technology solutions. The unique differences that come from different cultural, gender, and ethnic backgrounds create a rich environment with many perspectives.
We also hold a regular “Plastiq Engineering Open House” event where we welcome engineers from all backgrounds to come and visit our offices, meet some the team, and talk tech over some beer, wine, and pizza. If you’d like to come along at any point, just reach out to our recruiting team and they will add you to the invite list for our next open house!
Daily checkpoints, War Room Wednesdays, and our internal Wiki is how we communicate and collaborate.
Our daily checkpoint meetings include all members of engineering and product, as well as representatives from our marketing and operations teams. The goal of the meeting is to quickly address our progress, problems, and plans with one another. Given that all engineers at Plastiq are encouraged to be self-starters and project-owners, this daily checkpoint also serves as an opportunity to communicate any blockers you might be facing, and get help or support from others on the team. (It also gives us the chance to take stock of where we each are and pivot as necessary.)
Engineers also attend (and sometimes lead) War Room Wednesdays. These are 2- or 3-hour long blocks of time for the entire engineering team to gather in one room to do one of three things:
- Start and complete and entire mini project, like an MVP for a new feature of refactoring part of the codebase.
- Explore, experiment, and analyze some technology with the hopes of proposing a formal project for the future.
- Share knowledge on the latest and greatest technologies with the guidance of at least one expert in the domain.
By carving out dedicated time for broader collaboration across the entire engineering team, it’s not only an efficient way for us to learn from one another, but it also breaks down barriers for future collaboration.
Finally, Plastiq has a big culture of documentation. We have an internal Wiki that every single person at the company contributes to. You can find documentation about every product the company has ever built, and and also get the definition of our Donut Rule (one of our tastier traditions). By having good habits of writing everything down, communication across teams and departments is seamless.
We don’t have any meetings after 12pm.
We introduced this policy in order to protect the maker’s schedule (if you haven’t already, read Paul Graham’s influential essay on this). At Plastiq, any meeting with engineers must happen before noon time. This way, engineers have a large contiguous block of time to build software. As a result, engineers have all of there meetings between 10am and 12pm, starting with our 10am Daily Checkpoint meeting. Instead of scheduling ad hoc meetings, we use this daily forum to discuss specific items as a team.
Check out this blog post to learn more about our meeting culture at Plastiq.
High Employee Retention
The average tenure for an engineer at Plastiq is 3.3 years.
In the last 3 years, we’ve only had one engineer leave the company. There are many reasons why people stay at Plastiq. In addition to the team and product, we also offer tremendous learning and growth opportunities. Team members are encouraged to attend conferences and network at local meetups and events. We have a 20% rule (where 20% of our team’s monthly capacity is devoted to internal engineering work) to give us the opportunity to work on new technologies and reduce technical debt.
Engineers also set out their own learning goals and tell their managers what role they want. Managers then support their transitions. For example, our current Chief Architect started at Plastiq as a Software Engineer in Test. Many of our full-stack engineers joined us as specialized UX engineers. As a company, we are willing to sacrifice optimal resource allocation in order to support each person’s interests and career goals. We’re willing to “lose” someone (i.e. our Software Engineer in Test) as they transition into a new role, and will gladly backfill for them to support their personal trajectory.
It takes years of hard work to become an overnight success, so we need to pace ourselves.
Building a company is a marathon not a sprint. We do work hard and sometimes need to go the extra mile, but we deliberately take time off when we need it. We put people first and our high retention rate is a direct result of this. While we have expectations (tickets, timelines, deliverables), we don’t care about when and where you do your work. What we care about is that the work gets done and done well. We realize that "busy" doesn't guarantee productivity and "present" doesn't guarantee engagement.
If you need to take the afternoon off to pick up your child from daycare or run personal errands, and continue your work from home at 8pm, great. If you need to work from home because you have a really hairy technical issue to resolve, no problem. If you need to travel back home and want to work remotely for a few days, do it. As long as the work gets done.
One of our engineers, Marie Cuddy, made this statement on our blog: “There is a great level of trust within the team, as long as your work is getting done there are never any issues with having to balance your personal life. Plastiq also has amazing benefits and is ahead of many much larger companies in terms of vacation and maternity/paternity leave.”