swalker.dev

Ego Driven Development

A Senior has just asked you to review a pull request late on a Friday, they said "just approve it" and they're kind of your superior, whats the play? This has happened to me several times and I always wondered why can't I review it? What is so bad in here that I just need to blindly hit approve. I can't even look at the code? This is Ego Driven Development™. They're ego has blinded them to the fact that a mere none senior developer could possibly have something to offer their divine pull request goodness.

But here's the thing: software development is a team sport. It's not about individual brilliance or maintaining a hierarchy of who knows best. It's about collaboration, learning, and constantly improving our collective output. When a senior developer bypasses the review process, they're not just undermining the team's workflow—they're missing out on valuable perspectives that could enhance the code quality.

Let's break down why Ego Driven Development is harmful:

  1. Missed Learning Opportunities: Code reviews are two-way streets. Junior developers learn from seniors, but seniors can also gain fresh insights from juniors who might approach problems differently.
  2. Reduced Code Quality: No one is immune to mistakes. A fresh pair of eyes can catch errors, suggest optimizations, or point out potential issues that the author might have overlooked.
  3. Eroded Team Trust: When senior developers consistently bypass reviews, it sends a message that they don't value their teammates' input, which can lead to resentment and decreased morale.
  4. Knowledge Silos: By not allowing others to review their code, seniors inadvertently create knowledge silos, making the codebase more difficult to maintain in the long run.

So, what's the antidote to Ego Driven Development? It's cultivating a culture of humility and continuous learning. Here are some strategies to combat this issue:

  • Encourage Open Dialogue: Create an environment where all team members feel comfortable questioning decisions and suggesting improvements, regardless of seniority.
  • Lead by Example: Senior developers should actively seek feedback on their code, demonstrating that everyone's work can benefit from peer review.
  • Implement Pair Programming: This practice naturally breaks down barriers and encourages knowledge sharing across experience levels.
  • Celebrate Improvements: Acknowledge when code reviews lead to better solutions, reinforcing their value to the entire team.

Remember, your ego is not your amigo in software development. The truly senior move is to recognize that everyone on the team has something valuable to contribute. By fostering an environment of mutual respect and continuous improvement, we not only write better code but also build stronger, more resilient teams.

The next time someone asks you to "just approve" their pull request, take a stand for quality and collaboration. Politely insist on reviewing the code, and explain why it's important. You might just be the catalyst for positive change in your team's development culture.

After all, the best code isn't written by lone geniuses—it's crafted by humble, collaborative teams who understand that every perspective matters.