One Key to Growth: Seeking Out Discomfort


Team-Driven Developer

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

There are a lot of growth hacks, tips, and tricks available for software engineers today.

And while those hacks and tips are great, there is a key to growth that you can't hack through, and that's getting feedback.

Unfortunately, feedback can be difficult to obtain.

And you can't wait for feedback that comes once or twice a year during a performance check-in.

This week, I'm sharing some of the tactics and tools I've used to get feedback and to help me achieve my career goals.


Team-Building Exercise

This week's team-building exercise is to reach out to a team member you respect and trust and ask for feedback.

But first, make sure you know what you are asking feedback for :)

If you haven't done so recently, take stock of where you are in your career and what skills you want to grow in. They could be a new programming language, a deeper understanding of how to design complex systems, or even how to improve your technical writing.

Write them down and then brainstorm engineers in your company or on your team who have developed one or two of those skills. Reach out to them and humbly ask if they would be willing to give you more pointed feedback on that skill over the rest of the quarter.

If they say yes, great! If not, don't get discouraged. Try one or two others.

Getting feedback is worth the effort to help you grow.


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.

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 You’re staring at your editor. The code should work, but you’ve been fighting an error for a full day. You can’t figure out the problem no matter what you try. Or you’ve been staring at an empty file, wondering what code to write. You’ve got a vague Jira ticket, a lack of context, and a codebase that is difficult to understand. You’re blocked. Now, what do you do? It’s tempting—easy, even—to ping someone...

Team-Driven Developer A newsletter with tips and tools for building software as a team Imagine reading a technical design document or RFC. As you read, you notice that the language in the document is a bit confusing. For example: Requests likely need to be authorized using standard HTTP auth mechanisms What does this “requirement” mean? Are we using “standard” Authorization headers with base 64 encoded usernames and passwords? I don’t see a mention of HTTPS. And I also don’t know what...

Team-Driven Developer A newsletter with tips and tools for building software as a team A complex system is not the same as a system that delivers advanced functionality. Complexity within software refers to the characteristics of a software system and its ability to change over time. Functionality refers to the capabilities a software system exposes. In my experience, we often overlook this distinction more than we realize. I’ve seen engineers brag about how complex their system was as...