Developer Life at Trōv

After writing about Trōv's recruitment process yesterday, today I'd like to share information about the company and our culture.

Office

There is no office, at least not for developers. Trōv's head office is in Danville, CA, but all our developers work remotely. To make this work, we communicate. In fact, we over-communicate.

People can, and do, work from wherever suits them: home, coffee shops, a shared workspace, at the beach, etc. — as long as you have an internet connection, you can work with your team.

Schedule

We have no set working hours, and indeed many of our developers work outside the traditional 9-5. Each team has a daily sync meeting (about thirty minutes) and one longer weekly "kickoff" to flesh out upcoming user stories.

There are company-wide hangouts every six to eight weeks where the executives and each department (engineering, bizdev, marketing, design) share what's happening. A few times each year we all meet for a week in Danville — the company gatherings are an opportunity to see everyone in person, hang out, and have a ton of fun.

Last, but not least, we have an unlimited vacation policy. We value output over number of hours worked, and encourage everyone to do what they need to remain highly productive.

Tools

Slack is the most-used tool for all of engineering. It's integrated with Github, Pivotal Tracker, and all three of our CI systems (TeamCity, Jenkins, and Xcode Server). We also use Screenhero, Hangouts and appear.in to communicate.

We leverage both Crashlytics and the ELK stack to deal with production issues. Each team develops with their native IDE (Visual Studio, Android Studio, Xcode) and uses various utilities (e.g. Postman) as required.

Process

We mostly follow git-flow for development and use the PR mechanism in Github for code reviews. All code is reviewed by at least one person before being merged from a feature branch into develop.

In general, our mobile teams release every month and the server every two to three weeks. We re-prioritize as required and rarely plan to any detail beyond the next couple months. The design and product planning teams hold "epic" kickoffs to introduce major features and showcase possible workflows. During those meetings, developers interact with them and the product owner to ensure we end up with a great user experience.

Although we have borrowed a few terms from scrum (user stories, kickoff, scrum master), our version of "agile" is fairly lightweight. Demos happen spontaneously whenever there's something neat to share. The role of "scrum master" only involves keeping the first 5-10 minutes of the daily sync as a true "standup". We have retrospectives when we feel they're needed and anyone on the team can initiate them.

There is no code ownership at Trōv. We try to ensure that user stories take less than four hours to complete and, since they include acceptance tests from the product owner, any developer should be able to grab a story from the backlog and work on it.

Family

Scott (our CEO) has always said that our company is like a family and it's true. We have taken a talented group of people from all parts of the globe (Australia, Canada, Spain, the UK and the US) and built a wonderful, close-knit community. We are committed to maintaining this family atmosphere despite the effort it will take as we grow.

Interested?

We are still hiring for all our teams (iOS, Android, server) and if our environment sounds like a place you would want to work, please send your resume to careers@trov.com. More information on our open positions can be found at careers.trov.com/engineering.