This is Part 1 of my Soft Skills of Development series.
One of the best pieces of advice I ever heard was from a professional musician that had done very well in the extremely tough and overly crowded world of Nashville session musicians. His advice was to "be a pro, be a bro, be apropos."
Session musicians are a commodity. They themselves don't have public name recognition, they're not who sell tickets, they're the talent behind the lead performer. If they aren't good, they'll be replaced immediately. However, a proven session musician is very valuable to the lead performer. How do they prove themselves? "Be a pro, be a bro, be apropos."
Be a pro in music terms means you show up on time, and you know the music. There's no room to be late, you'll be replaced. There's no room to make mistakes on stage, you'll be replaced.
"Be a bro" in music terms means you are a generally helpful person. If the stage crew is running behind setting up or tearing down a set, you jump in and help. If another band member is having car troubles, you go out of your way to help. If you have a piece of equipment that someone else needs, offer it up.
"Be apropos" in music terms means you act appropriately for the gig. If you've been hired to play bass for a bluegrass artist at an upcoming concert, don't show off your new style of bluegrass-jazz fusion bass. Play what's expected, and play it well. As a session musician, you're not trying to stand out, or make the show about you. You are valued for being apropos.
I think this is great advice for developers too. We're a commodity as well, but a really good developer is highly valued.
Be a pro in development terms means you also show up on time, every day. I once worked with a developer that, unannounced, decided to go skiing two days before a tight deadline, when everyone else was busting their ass to finish the work. That's not being a pro. That session musician would never get another chance. "Hey, Adele, I know I was supposed to play drums last night for you, but it was a powder day and I just had to go skiing." Be a pro also means that your code is up to standard. That should go without saying, but it is surprisingly common for developers to submit substandard code. You don't get a second gig by playing lousy music.
Be a bro in development terms means you help out where needed. If another developer on your team is struggling with something, help them out, even if it will set you behind a bit. If your sales person needs help looking over a proposal, help them out, even if it sets you behind. Be a generally helpful person, it goes a long way.
Be apropos in development terms means you act appropriately for the contract. If you begin work on an existing project that is using a specific tool set, use that tool set. If you only wear flannel plaid, but you have a formal business meeting, dress in business appropriate attire, it's not the time to show those corporate drones that you're not bound by their repressive rules.
Written by Alex Brinkman who lives and works in Denver, but plays in the mountains.