Krav Maga Principles in Software Engineering

Kyle Mickey
Feb 19, 2020

As an enterprise software developer, I spend way too much time sitting at my desk, drinking coffee or iced tea, listening to music while lost in an editor for hours on end. Unsurprisingly, this led to what some might affectionately call a “Dad Bod.” While there are many awesome aspects to parenthood, the idea of having a Homer Simpson body type does not appeal…

I started taking classes at Colorado Krav Maga to get more active and to practice some self-care. I am still a beginner, at about 4-5 months in, but I’ve learned some basics and guiding ideas in Krav Maga.

Krav Maga is a modern, Israeli martial art. Just as you iterate and optimize your code base, different athletic and self defense skills are refined with multiple iterations. From this premise, Krav Maga is intended to be a highly physical, practical style of training and self defense.

In addition to being a badass self-defense practice, I have learned principles from Krav Maga lend themselves well to software engineering and development.

Identify the Immediate Threat

Krav Maga tactics involve defending against choking or other highly threatening attacks. Before any defense can be successful, you learn to clear your airway or get off the ground before anything else.

This got me reflecting on prioritization of software development. Certain features (or fixes!) immediately impact the success of your project. These include getting an automated deployment process, basic logging config, or even a basic proof-of-concept (POC) for an approach. Whatever is keeping you from delivering something of value tomorrow, start working on it today.

Explosive Energy

Krav Maga makes great use of highly physical, explosive movements. These movements correspond to natural reactions, and tend to be hard to over-power.

At risk of over-stretching the metaphor, once you identify an immediate threat to your project/product/mission, take immediate action. Remember that an immediate 80% solution can be iterated on, while waiting to write a 95% solution can take much longer.

Finish the Fight

Ok, this is definitely a stretched metaphor. For self-defense, Krav Maga emphasizes highly physical responses to attacks. Delivering one defensive blow is not enough- one must make sure they are safe.

As with Krav Maga, after reaching the 80% solution, you have to determine how much business value for a product is satisfactory of your project goals. This is highly dependent on the situation; for an MVP, 80% may be over-engineered, while product-grade (funded) development projects may require more refinement for edge cases, scalability and error handling.

I think this analogy has been stretched to the point of breaking. The point is, prioritization and focus can make the difference between a successful solution or a slow-growing mess of features.

 

For help building an MVP, check out this video about how to story map custom software.

We use cookies to personalize content and ads, to provide social media features and to analyze our traffic. We also share information about your use of our site with our social media, advertising and analytics partners. Read our cookie policy here

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close