This is part 3 of a series on why a software engineer should consider getting an MBA.
Writing software is a skill. So is refactoring code, debugging, using an IDE, (not using an IDE,) writing unit tests, optimizing for performance, and so on. Since these are arcane, generally untransferable skills which only we know, we in the software development world tend to take an ivory tower view of business. There’s Us, and there’s Them. They know how to talk about and present things, and we know how to do things. And, if this isn’t you, then you at least know people who take this view. Partly it comes from people outside our profession having a really reductive notion of what we do, generally boiling it down to something like "playing with computers."
One thing you will discover in an MBA program is that while business people actually are pretty dismissive of what we do when they think we aren’t listening, software people are equally so about what business people do. And among the skills that business people tend to have, presenting, writing, and collaborating are the ones you can do the most with.
The MBA program is sort of three quarters academics and one quarter vocational training, and that quarter is almost entirely business skills. You will be presenting. A lot. Writing? A lot. And collaborating...well, let’s just say way more than anyone would reasonably expect or want. It’s a pain because everyone has other responsibilities and families and some people don’t pull their weight. Just like at work.
If you hate presenting–as I, and most other reasonable people do–you will get so much practice that you won’t hate it anymore. Or, at least, you will hate it less. If you have crippling anxiety about presenting, as I always have, then you will get ample opportunities to practice different techniques for mitigating your anxiety and presenting well in spite of it.
Software engineers already tend to be good writers, I’ve noticed, but you will get practice writing for a business audience, which is a little different. All that weird prevaricating language that grates on your every nerve will be at your fingertips, plus some understanding of why people write that way.
And as for group work, generally these collaborations take the form of mini companies, with defined leadership roles that you can take on, to get practice handling a herd. Just as in high school and your undergraduate studies, you will feel like you are doing everything. This time, however, it’s really part of your training to learn how to deal with that and get everyone working. You will learn how to use collaboration tools to work better and gain a new respect for the people you work with. You will try, and fail, to just assign sections of work to people and try to glue it together before the deadline, and learn from this failure.
These are often called "soft skills,” because they are sort of indefinite, and the term handily distinguishes them from skills that are more measurable. However, having them can mean the difference between a great career doing the work you want to do, and a good career doing the work you can get. I honestly think the MBA might be worth it even if it just taught you these things.
Next up: use the MBA program to practice real-world programming.