This apprenticeship pattern discusses the risk of finding yourself the strongest member within your team, and stunting your learning possibilities. To be the worst means to always surround yourself with developers who are stronger than you whenever possible. This can continue to encourage your learning growth, and make you realize you are capable of things you did not know you could achieve. While there are many positive to being the weakest member in a team, there are also many risks. A high performance team will most likely expect you to be able to keep up with them when they are working full blast, and if you do not have the knowledge or skills available to consistently keep up with their pace, you run the risk of getting fired or kicked off the team. There is also the risk of ruining your confidence level. For example, if you were the best developer in your old team or job, and suddenly get thrown into an environment to where you are simply not the best anymore, it can be damaging to your self confidence, which can then decrease motivation and the drive to learn and achieve new things. To accomplish “being the worst”, it is good to make a list of all the developing teams that you are aware of, and rank them based on their skill level. Then identify who is accepting new members who want to advance in their skill set. This process would require looking at different departments than the one you are currently in, as well as different companies. It is always wise to keep your mind open to new opportunities when compiling these lists. It would be a good benefit as well to join mailing lists or other services that will keep you updated on new positions available.
In my experience, I have always felt I was not the strongest developer in no matter what team I found myself in. I always felt that there was at least a single person who way beyond my performance. Instead of letting this drag me down however, I followed closely to what the stronger individual was doing and how they operated in order to learn more and increase my skill. I always did my best to learn on my own when I needed to so I would not drag the team down. I felt that I was not just merely a passenger on the team, and I was bringing valuable information and skills towards the projects we were completing. In some aspects, I actually was the most proficient in a certain task and I did not even realize it, and that could be contributed to having been surround by such strong developers in my past. It is important to keep advancing your learning so that you are able to perform and produce the best quality products for customers, and surrounding yourself with individuals who are a higher skill level than you will increase your chances of becoming the best in your group, restarting the cycle and starting back at looking to become the worst.
From the blog CS@Worcester – Noelan Chabot's Blog by nchabot1 and used with permission of the author. All other rights reserved by the author.