This post is in progress. Comment if you're interested.

Jobs have many dimensions and I’ll describe my dream job in several dimensions. In my dream job I learn the needs of the business and focus the team on delivering in a sustainable manner. Simultaneously, I help team members grow, develop our culture, and build valuable tech. When talking to others I prefer a couch to a table, and when I need a break you might see me juggling, practicing magic, or riding my folding bike - often in the office.

Engineering Manager or Tech lead: Engineering Manager

I’m passionate about tech, but I’m even more passionate about aspiring to be the best boss my team will ever have. Part of being the best is having deep understanding of the tech, so I always have some small projects on the side, and every few years I’ll do a rotation as a tech lead.

Startup, Turn Around, Accelerated Growth, Realignment, Sustaining Success: Startup and Turn around

If you don’t know those words, read about STARS

At this point in my career, my favorite situation is startup (e.g. Smile, Amazon Video Shopping, Employee #50 at Azure) because it allows me to build a high performing team that can use ingenuity to get a solution out the door as quickly as possible.

Turn around situations(e.g. Cache) can be much like startups, except instead of going from “0 to 1000”, you need to go from “-100 to 100” with the existing team. Because the start of a turn around includes lots of demoralized players it is both incredibly difficult and also intensely satisfying for me once progress is made.

Accelerated Growth, Realignment, Sustaining Success aren’t yet exciting to me, but I suspect as I continue my career I’ll find them appealing in that order.

B2C, B2B, Infrastructure? B2C!

At this point in my career I’m interested in making the lives of others better. Right now, I’d like to do this via consumer software.

Product Domain? Productivity and Positive Computing!

As a human, I’m incredibly passionate about well being. Well being is explored in the nascent field of positive computing, the computing analog to positive psychology. Computing jobs focused on well being are rare, but if that’s something you need help working on, I might jump at the chance to join you, so reach out.

Technologist or Entrepreneur: Entrepreneur!

As I get older, I’m finding more satisfaction in solving a customer’s problem then extending the limits of technology. That said, I’ve built bad ass complex technical systems for the first 20 years of my career so I make sure we build and use the right architecture and technology to effectively meet the customers need.

Product/Market Risk vs Technical Risk: Product/Market Risk!

Incubations need to prove a risk can be overcome, either product/market or technical. Product/market risk is “Do customers want your product”, while technical risk is “Can we build the tech to deliver it”.

I’m most interested in proving product/market fit. That said, with over 20 years experience as a software engineer, I’m well versed in resolving technical risk, an expert at system design, code, and mentoring developers.

Signals, Inferences, Experiences? Experiences!

A lot of modern software can be decomposed in three layers: signals, inferences and experiences. Signals are the raw input in the system, both static, and dynamic. Inferences are the computations performed over the signal to determine something meaningful, this often involves big data and ML. Experiences are the way inferences and signal are presented to the user, this is often an app and the services which power the app. Inferences and experiences often become new signal to drive the system.

I’m most interested in building the experiences, but that requires me to deeply understand and drive signals and inferences. Steve Jobs says it well:

One of the things I’ve always found is that you’ve got to start with the customer experience and work backwards to the technology. You can’t start with the technology and try to figure out where you’re going to try to sell it. And I’ve made this mistake probably more than anybody else in this room. And I got the scar tissue to prove it.

Business, Experience, Technology: Business and Experience!

Technology leaders need to divide their time among the business, experiences, and technology. While each of these are interesting at this point in my career, my technology skill is well developed and now I want to focus on building my business and experiences muscles.

Regardless of my job I will be successful when:

Very entertaining references on engineering jobs in the industry.

I’ll need to create a seperate post from this, but for now I’ll just hold these references

If you’re thinking of your engineering job, check out the following post from a fantastic writer

The 10x engineer - A post describing the need for different engineers at different times in the company life cycle:

We need charismatic leaders. They are the ones to beat the shit out and launch a project. At a later stage, they can’t do much. But that’s why they form a team which wraps it all up in a cozy bureaucracy and thus survive the valley of death. Eventually, we need everyone, yet at different times and places. Ilon Mask can invent and set up the Falcon X, but his team will assemble the rocket while he’s shitstorming Twitter.

Or in more smart words:

Procedural legitimacy is always better than charismatic legitimacy, because charisma is just an appeal to transcendental values, while procedure is rational. But one thing will never replace the other, because procedural legitimacy turns into bureaucracy over time, bureaucracy becomes a new class, innovation stagnates, and then a new charismatic leader appears, who breaks the old procedure and offers a new, perhaps more optimal one. And then everything goes on to Hegel’s old man.

How to hire sane teams - A post describing the difficulty in hiring.

There is no ruler to properly measure engineers. Standard grades “Junior-Middle-Senior-Lead” helps not more than a stick from the forest helps us measure the speed of light

At the beginning, it’s more profitable to hire those with “fire in their eyes”, while in the years of stability and good revenue, howling engineers are too dangerous. It’s time for a company to hire 9000 bureaucrats and surround them with “processes”.

After that, early employers will run away in horror, writing unveiling posts on Medium, while the company can continue to grow steadily. That’s absolutely normal.

The ability to get things done has one unpleasant feature: it reduces with the growth of wisdom. And there’s nothing you can do about it. “I’m too old for this shit” mode on.