Layers of Innovation


Team-Driven Developer

A newsletter with tips and tools for building software as a team

Software companies love to talk about innovation.

Whether they are building a product that will “revolutionize the way teams do X” or plan to “disrupt the market”, there is real value in convincing investors that a company is doing something unique and innovative.

You’ll also see this idea on job postings or in advice on how to grow your career. "To get to the next level, you must innovate, challenge the status quo, and bring new ideas to your teams."

But we’ve also heard the tried-and-true adage, “Don’t reinvent the wheel” or “Don’t forget the basics.”

How can you reconcile these two ideas as you chart a course for growth in your career?

In my experience, this comes down to learning that innovation is just like many software architectures: it’s built in layers.


Team-Building Exercise

This week's Team-Building Exercise is around innovating for your team's daily work.

We've done similar exercises like this before around Developer Experience. But this time, shoot for the moon:

  • What products could your team help introduce to improve revenue?
  • In what ways could your team save on cost for your software?
  • Is there anything truly new your team might consider building that could be open-sourced?
  • Are there other innovations you know about across working groups or from conferences that your team should prototype or look into?

Don't wait for a retro on this either - start a message thread with an idea you've come up with and get feedback from your team. I've been amazed at how many ideas have been created on my current team from someone saying, "Hey, I was thinking about X and had this idea...."

Part of innovating is having the courage to ask questions and share your ideas.


Here are some more resources from me to help you build better teams!​

  • 📕 Code Review Champion - My book on code reviews will help you become a world-class code reviewer. From giving kind feedback to navigating conflict, this book can help anyone wanting to sharpen their code review skills.
  • ❓​Questions for Devs - Building a team takes more than catching up about your weekend at standup. I've used these questions to build relationships with my team and push past the same old surface-level conversations.
  • ​📋 Pull Request Template - Maximize your efforts in pull requests by giving context right at the beginning of a new pull request. Copy and paste this template into your repo, and voilà!
  • 📊 ​Code Review Metrics - Start measuring how your team tracks against a few common code review metrics. This python script will pull your GitHub pull requests and generate a CSV you can slice-n-dice to get the data you want. It also has graphs! As this is an open-source project, your contributions and feedback would be great!

Other Creators I Recommend

Image for Building Custom SaaS Web Apps

Building Custom SaaS Web Apps

by Thomas McGee

I’m a web developer by trade, but I’m a creator at heart. As such, I constantly find myself making, designing, and coding new things to make life easier for creators of all kinds. Whether it be Radarist for managing your projects and tasks or Startboard for easily organizing your web bookmarks—I’m here to make it easier for anyone to earn online.

Image for Nerd Notes | Power-up your freelancing

Nerd Notes | Power-up your freelancing

By Chris Hufnagel

Every Tuesday, creative freelancers (like you) learn from my 12+ years out on my own. Pricing, productivity, mindset, and everything in between.

113 Cherry St #92768, Seattle, WA 98104
Unsubscribe · Preferences

Dan Goslen | The Team-Driven Developer

Learn the tips and tools for building software as a team! Every other week, I send a long-form article, a team-building exercise, and resources to help you build better software teams so you can build better software.

Read more from Dan Goslen | The Team-Driven Developer

Team-Driven Developer A newsletter with tips and tools for building software as a team The first time I hit the proverbial "deploy button" as a software engineer, I was anything but calm. While we were confident in our tests, we always feared, "What if something goes wrong?" or "What if we missed a critical test case?" This first deployment went fine, but over the past decade, I've had my fair share of botched deployments or the need to rollback quickly. It's not a fun place to be in. During...

Team-Driven Developer A newsletter with tips and tools for building software as a team Software engineers are all about principles and patterns. Short acronyms like DRY, YAGNI, KIS, etc., are used everywhere within the industry to try and concisely communicate an axiom of how to write software. One principle that arises within software engineering is that of reusability. We have this idea that we can build software components once and reuse them everywhere. The idea is that by building...

Team-Driven Developer A newsletter with tips and tools for building software as a team A few years ago, my wife and I replaced all the windows in our home. When it came time to install it, I figured it would take the better part of a week (it’s about 22 windows). Instead, the company said, “Oh, it takes about two days.” I was skeptical but guessed they would send a larger crew or something than I had imagined. On installation day, two guys showed up. Two! How were two guys going to replace...