I was recently chatting with Tim Bray, CTO of Sitemate, one of our customers, about Linc and how it helped him and his team, when Tim mentioned something that I think was really profound because he explained it so succinctly:
Linc makes it really easy to reorder your development process to be much more effective.
Even before starting to use Linc, Sitemate was already moving away from a traditional linear model of code, test, review, demo, release into something more fluid. Linc just made it even easier/better.
My favourite quote?
“the code was perfect after code review, but unfortunately the feature was not.”
Although, coming in at a very close second is this quote:
“Screenshots are ok, videos are good, but nothing beats actually using a feature when it comes to giving feedback.”
I have included our exchange below so you can read it in Tim’s words. (edited for clarity/readability)
Erwin (Linc): Hey Tim, what is the development team at Sitemate like?
Tim (Sitemate): We have a smallish, remote-first product engineering team. Basically we have team members all over Asia, Europe and the US.
Having such a spread-out team is both a blessing and a curse, but it means time zones are always a challenge and everything needs to be asynchronous.
Erwin (Linc): So what was your workflow before Linc, and how have you finessed that over time?
Tim (Sitemate): Because of our distributed nature, we needed super lightweight processes that work asynchronously.
So historically, we followed the standard flow that many tech companies use:
- PR/code review, then
- product review (demo), and finally
- testing (UAT).
We very quickly ran into some pretty big issues with this approach though.
Firstly, running everything sequentially was slowing us down as we had to wait for each stage to complete before moving to the next stage.
Secondly, we ran into issues where the code was perfect after code review, but unfortunately the feature was not quite right once we got the rest of the organisation and our customers involved. Which led to a bunch of rework.
Seeing as how beneficial it was to get early product feedback, the first thing we did was move forward the product review/demo.
So we started to record videos of a feature that was nearing completion, but before code reviews/PRs were done, to get early product feedback.
And that was a massive improvement; getting product feedback earlier meant we were saving time, increasing quality and most importantly, building a better product for our customers.
Erwin (Linc): Awesome! So how has Linc changed the way you work now then? What has been the biggest benefit?
Tim (Sitemate): While we loved the flow of the new process, it allowed us to ship better quality features faster, but it was not without its challenges. The videos were relatively time-consuming to create and needed frequent re-recording if we iterated on a feature.
But as we mapped out what our ideal state looked like, where product could not just watch a video, but use the software, it became clear that we could not justify investing that much engineering effort in rebuilding our pipelines and environments over delivering direct value to our customers yet.
Until we heard about Linc that is :)
With Linc we could keep our workflow of product feedback before code reviews, but instead of videos, the product team, our stakeholders and even customers could *use* the software. Screenshots are ok, videos are good, but nothing beats actually using a feature when it comes to giving feedback.
This improved the work of everyone involved in the process - product managers, designers, engineering & QA - as they could now share, preview and manually test in minutes.
We get all the benefits that bigger or more mature companies have - but without the cost of managing additional infrastructure and platforms.
Erwin: What was the biggest unexpected benefit?
Tim: Automated E2E testing. We obviously run all our unit tests and linting on every commit and that short feedback is extremely helpful. But our Cypress End to End tests were run on our staging environment which we deployed to after merging a PR.
So any regressions in our E2E tests would sometimes only show up after a PR was reviewed, approved and merged.
But Linc runs our Cypress test suite on every single commit against a preview link. This means that for the first time in forever we have everything we need to have done before merging a PR. Which means that once a PR is merged, it is ready to be shipped to production.