2024 Public Training Schedule
December 9 – 12, 2024 – Agile Analysis and Design Patterns
Half-Day Sessions
(c) 2024 To Be Agile
In the old days of corporate America, the way you got ahead was through hard work and perseverance. You strove to become an expert in some area that was valuable so the people would come to you for your expertise. This is how you got ahead. This is how you got into management. You got there by having people depend on you.
But this has a downside. Becoming an indispensable resource makes you, well indispensable. That means that you can’t get sick or take vacations and so you become a slave to your own knowledge.
In today’s world of Agile software development, we define those characteristics that get us ahead as exactly the opposite. Instead of withholding specialized knowledge to become the “sage on the stage” we share our knowledge and become the “guide on the side.” Being a team player holds more value today and sharing knowledge within and across teams helps everyone to be successful in the future.
Agile encourages cross-functional teams, which means that we want everyone on the team to be able to work in any part of the code. This may sound inefficient at first, but it helps create consistency and diversity within the team so that there is no one critical resource on the team and everybody is able to take vacations or get sick without all of the development grinding to a halt.
Let’s face it, being in silo is no fun. Being a radiator is far more exciting. You get to share and help others. You get to be appreciated and supported. People like team players.
The other thing that I can tell you about being a radiator and sharing information with others, which is what I built my career on, is that it is not just supremely satisfying but also teaching others is one of the very best ways of learning yourself. I’ve learned an enormous amount by being able to articulate ideas in many different ways so that a variety of people can understand them. We don’t all learn and assimilate information in the same way and having flexibility in being able to present ideas can help make them more valuable to a wider range of people. It’s exciting to help people learn and understand and this is how we build excellent teams.
Of course, we can still have specialties. Some developers specialize in testing, other developers specialize in databases or front-end but ultimately, it is good for all developers to gain experience in all of the major areas of software development, including databases and testing. It’s okay to start on the path from different directions but ultimately, if we are career software developers, we will learn to become full-stack developers.
There is so much to learn in our field. It seems like every week a new framework or technology is coming out. Things are fast-paced and ever-changing in the field of software development and that’s a good thing because it means that we are growing and advancing at a rapid rate. It is some consolation for me to know that the fundamentals don’t change. When we have a good sense of the basics of software development then we can recognize what’s different and what’s the same about new tools and techniques from what we already know and this helps us grasp new concepts more easily.
Previous Post: « Makers and Menders
Next Post: Green Tests and Red Tests »