On the NFJS tour, there are questions that seem to come up again and again. One common example is “How do we determine which new tools and technologies we should focus our energy on learning?” another is “How do we stop management from forcing us to cut corners on every release so we can create better and more maintainable code?” which, after awhile becomes “How can we best convince management we need to rewrite the business application?”
There is a single meta-answer to all these questions and many others.
It begins with the understanding that what we as engineers value, and what the business values are often very different (even if the ultimate goals are the same) By being able to understand these different perspectives it's possible to begin to frame our arguments around the needs and the wants of the business. This alone will make any engineer significantly more effective.
This session picks up from where “Stop writing code and start solving problems” stops discussing what is value, how do we align the values of the business with the needs and values of the engineer.
For nearly 20 years, Michael was a software engineer moonlighting as a magician. Now he's a magician moonlighting as a tech leader/software engineer. In both endeavors he has dedicated himself to mastery and has gained deep insights both from his eclectic interests, entrepreneurial spirit, and experience that spans the full stack, the entire project lifecycle, and several technologies.
His time is equally divided between performing around the world, jumping out of perfectly good airplanes, and building software that doesn't suck.