new site();

MBA for devs: a relatively painless path to domain knowledge

2016-05-04

This is part 1 of a series on why a software engineer should consider getting an MBA.

As software developers, we generally pick up domain knowledge from places we have worked, and it tends to be specific to the problems we addressed with our software in those places. This is not a bad thing; we have very focused pockets of knowledge about given business processes, which can come in handy in similar contexts (or the same ones, in a different company). However, this state of things is reactive: we are given a problem and we work out the solution, by asking questions and getting feedback from the stakeholders. We are at the mercy of people who are trying to pre-translate their problems and requirements into a language they think we understand, which dumbs it down just enough that friction is introduced in the form of ambiguity. It’s like lossy compression, in a way, with those compression artifacts showing up in the form of arguments over acceptance criteria.

Enter the MBA–which, unlike most other graduate-level pursuits, is actually a survey across domains rather than a deep dive into a single one. To finish you generally need to have taken classes in accounting, marketing, finance, IT, business law, and management, plus or minus whatever your particular school is into. The perspective taken is that you are going to be a manager who will need to know how all these pieces fit together, and what everyone is up to in all those different departments. You can probably see that this is also valuable information for anyone whose work spans disciplines or departments, such as...oh, business software engineers, for instance.

What’s more, this knowledge will help you understand the challenges faced by people in those departments, as well as give you familiarity with the processes in them. This in turn allows you to be a better (and more empowered) partner in coming up with business software, because you understand better how it will be used and what challenges are faced by your users and customers. In taking these classes you will be required to use the tools and approaches customarily employed by people who do that work for a living, and you will see what makes the work harder and what makes it easier.

Finally, the exposure you will get to all the different business departments–and the processes and tools used in them–will provide you with ample opportunity to cultivate new product ideas. As I’ve mentioned, the current business environment still goes to Excel and PowerPoint to solve new and specific problems. Can you come up with a better way? If so, you have an idea for a product–one that you discovered on your own instead of getting it handed to you by a product owner. Enjoy your new startup–and try not to let it interfere with your schoolwork.

Next up: demonstrate some very valuable qualities, in three little letters.