The letter A styled as Alchemists logo. lchemists Syndication Icon

Putin's War on Ukraine - Watch President Zelenskyy's speech and help Ukraine fight against the senseless cruelty of a dictator!

Published October 1, 2021 Updated June 23, 2022
Developer Hegemony
Developer Hegemony by Erik Dietrich

If you’ve spent the majority of your career working with terrible teams, leadership, and companies but love the craft of engineering then this book is for you. Doing what you love shouldn’t have hurt especially when you are good at what you do. For instance, there are multiple reasons why senior engineers are leading the great resignation movement. Anyway, this book will help you reframe your mindset to take charge of your own destiny whether it be as an independent consultant, bootstrapping yourself to sell a productized service, or a mix of both.

The book notes captured in this article are by no means comprehensive. In fact, I condense several chapters down to their essence. As with other book notes on this site, what might be of interest to me might not be the same for you. Regardless, I highly encourage you buying this book because there is no reason you need to live like a serf. The power to be independent is there if you are committed to the fortitude and discipline it takes to be free. Enjoy!

Introductory Notes

Knowledge work is fundamentally flawed in a world where where we work in pyramid-shaped corporate structure.

Other Books by Erik Dietrich

If you like this book, you might also want to check the following:

A Fictional Not-So-Distant Future

The book starts out with a fictional story of a consultancy winning over a new client. The interesting sell to the client is the way in which the consultancy operates. Estimation, story points, project management, etc. is thrown out in favor of empowered engineers who are capable of running the show on their own. People collaborate and work together by trusting one another to do the job well. I’m definitely a strong believer of this approach and is further spoken about in these books which I’ve written about on this site as well:

The Nature of the Game

I found it interesting to learn that the author had attended college starting three years directly after I had graduated from college. All while in the midst of the dot-com bubble. I too lived through the rise and fall of the dot-com bubble. Also interesting to note the parallels of our early careers despite the three year offset, being both fresh out of college with our first and longest lived jobs. I had been at my first job for roughly six years before burning out and moving on to different work. Ever since then, work has been much shorter and no where near as long lived. Initially, it was two years. These days it’s like a year tops before moving on because the industry is so broken. Especially, for those who enjoy the craft and software architecture in general but are seldom given the chance to shine or quite frankly burn out due to dealing with little to no leadership at the helm.

This part of the book sets the stage with a focus around the following principals:

I like how the author breaks down the Gervious Principle not so much in terms of the people that make up the corporation but in terms of how the corporation or system itself is broken and the damage it has wrought on the people that comprise it:

  • Losers (broken) - They are this way due to a lost sense of hope and settling with the smallest of optimizations in order to live a bearable life.

  • Clueless (tricked) - They are caught up in the overvaluation of corporate perks and honors bestowed to them and others out of merit and hard work when, in fact, it’s due to time and the patience of waiting.

  • Sociopaths (forced into ethical conundrums) - They’ve lost their ethical compass due to abandonment of hope and perspective. They only know that to play by the rules is to lose and so they cheat.

To be clear, you want to frame the above in terms of what these people have lost due to the dysfunctional corporate structure in which they work instead of what’s wrong with them themselves.

Good observation and I agree with this completely as I’ve yet to experience otherwise:

[Organizations] are pathological in a way that corrupts their components.

The author suggests we rename the three categories of workers as follows:

  • Pragmatists (losers) - Find value or at least stress the value in life outside of work only because any hope of advancement or enjoyment of their profession has been taken way from them.

  • Idealists (clueless) - Due to losing perspective, they still believe in company meritocracy and benevolent stewardship of their career.

  • Opportunists (sociopaths) - They’ve lost ethical perspective and human connection in favor of playing by their own rules.

Faux Ownership — Managers and Owners

  • Pragmatists - When the company hires someone for hourly or salaried pay.

  • Idealists - When the opportunist can no longer manage all of the pragmatist and needs another layer of indirection, a loyal pragmatist or one showing some semblance of loyalty or good performance is newly minted with a title and becomes an idealist. At this point seniority and the patterns for advancement are established.

  • Opportunists - When the company has hired someone for equity (sweat equity) with little to no pay. That person is betting on themselves to win in that case.

The company owns you, well, for 40-hours a week at least. Signing a contract constrains you to putting all of your eggs in a single basket in exchange for wages, health benefits, retirement, and maybe a few other perks. Along these lines, the author makes a strong point on the contradiction of what Human Resources truly is:

They’re asked to tell you how much the company cares about you and values you, and then, later, they’re asked to censure and terminate you.

The History of the Game

This part of the book takes a step back in time to build up to where we are now. There are a lot of good reminders and lessons here.

Less Than the Sum of Its Parts

I would work cheek-by-jowl with coworkers, navigating corporate processes and office politics that chipped away at my tolerance until I couldn’t take it anymore. The force of the psychic friction would quickly outweigh my enthusiasm for the problem and the value I thought I could add. I would lose faith in the company and its people, as constituted.

I’ve been experiencing this for over a decade now. What’s most disturbing is the realization happens much faster these days. I’m always excited about the possibilities of a new job, team, and better way of practicing the craft only to be severely disappointed in the end or — worse — completely mislead during the interview process.

Legacy — Ancient Corporations

The word, corporation, stems from Latin and Middle English to mean a group of people working together for a common purpose. Interestingly, the way some treat corporations today is very much like a form of commercial religion. Yet, ancient civilizations found a way to gather people for a common, commercial, purpose which would allow the merchants/business people of those times to create a lasting legacy through name (or family name) that would live on through media and historical records of those times. Might not be as great as pyramids, temples, statues, etc. of past leaders but it was a legacy none-the-less.

Influence — Medieval Corporations

I’ve always liked the terminology originally used during this time to describe the experience of one advancing in the craft. I’ve tailored the terminology to be more gender neutral as follows:

  • Apprentice: Entry level software engineer.

  • Journeyer: Mid level software engineer. Earned once venturing out on one’s own after being an apprentice for some period of time.

  • Crafter - Senior software engineer and an expert of the craft. Earned by the guild bestowing this title upon the individual as the highest honor possible.

For craft specialization, a guild would be used to establish levels of quality. Unfortunately, quality was a by product, since profit by paying into the guilds to be a member or lobbying for more influence within the city was the stronger driving force. The duties of members and the guild itself could be broken down as follows:

  • Members: Payed dues, supplied labor, and participated in the governance of the guild.

  • Guild: Provided member protection, community influence, marketing, and a steady supply of work.

Guilds were initially formed, during the rise of cites and more cosmopolitan life styles, as way to fight against taxes levied by the lords of a town. By banding together, the guild had a way to fight back and the lords had to stand down in order to get access to the goods and services they wanted.

[Guilds were] the precursor to the modern corporation’s ability to influence society beyond its own scope of doing business

Gestalt — Mercantilism

With the rise, and fall of guilds, so entered mercantilism as a way of nations to protect their commercial influence. This meant precious metals, as a form of currency, started to fall by the way side as national currency in the form of paper started to proliferate. This, in turn, gave rise to chartered companies which introduced to new concepts:

  • Investors (underwriters) were gathered to fund major initiatives.

  • Joint stock was introduced so non-owners could own shares of the company and be traded like any other good or commodity.

This separation of ownership from source of profit was a big leap in those days.

Barriers to Entry — Industrial Revolution

The industrial revolution introduced the mass production of identical goods which was something a crafter couldn’t do. The difference between the two is that with crafted works, they were unique and more costly (still are), while mass produced goods were identical but cheaper.

Layered Organizations — Taylorism

Frederick Winslow Taylor was a thought leader and influencer during the Progressive Era (1890 - 1930) who wrote The Principles of Scientific Management. This book was highly influential in shaping the modern corporation.

From the author:

I personally think of Taylor as a magnificent bastard.

Yep.

A neat observation is that Taylor was pioneering the lean startup 100 years before The Lean Startup was written. He was definitely not the most upstanding of all people since he thought of unskilled/uneducated laborers as unintelligent and introduced the Motivation 2.0.0 carrot and the stick as mentioned in Drive which, sadly, is still in use to this day.

Tangentially, Henry Gantt was a disciple of Taylor’s work and thus was born the Gantt Chart.

Ubiquity — Organized Labor

Labor unions are the succession of Taylorism and had been around for a couple of centuries in the form of trade unions. Trade unions were also the successor of guilds.

  • Trade Unions - Were guild-like in nature and the precursor to labor unions. They were focused on smaller, more wealthier segments of the population. Specifically the middle class but not so much the unskilled laborer.

  • Labor Unions - Provided a broader safety net for the downtrodden common laborer.

Anachronism — Rise of Knowledge Work

A few quotes of note:

The eight-hour day, five-day workweek was established in the 1930s.

Peter Drucker coined the term "knowledge worker" in 1957.

The stereotype that developers need "project managers" and "business analysts" to act as translators, however, remains. Corporations hire recruiters to badger and beg developers to take interviews, and then they subject them to Thomas Edison’s idiotic interview scheme to thank them. Just like assembly line workers from eighty years ago, developers are asked to drive to a physical location, punch in at nine, punch out at five, and mind that their breaks not take too long (you know, lest they fail to assemble their expected widget count for the day).

Thankfully, the days of corporations are waning. It is now possible, as a knowledge worker, to start your own company and scale — thanks to Cloud Computing — with very little investment or upfront cash. It only requires mastery of your craft and the discipline to run the marathon.

How to Win the Game

This is my least favorite part of the book because it takes a dark turn into slime ball ethics but helps set the stage towards a better path forward without selling your soul.

Pragmatists Succeed with Alternate Narratives

The overwhelming majority of corporate programmers content in [their hobby] are indeed pragmatists. They value the thrill of flow and the feedback loop of programming over things like autonomy, ownership, and a will-to-power approach. Success for these particular pragmatists, then, becomes that of superior knowledge and practice: knowing the ins and outs of Docker or ridiculous numbers of Regex. They earn a living, enjoy the trappings of life, and are free to pursue their own personal goals and to define their own non-work-oriented success narratives.

Pragmatist success is thus defined by two tiers of goal. The first essential tier is to maintain steady enough employment to sustain good standing on Maslow’s hierarchy. The second tier of success is then largely self-defined. A pragmatist succeeds if she stays employed and feels good about her life and what she does with it.

Idealists Succeed with Merged Identity

Success for the idealist thus becomes a matter of doing the work in front of the right people and doing it in such a way as to demonstrate their utter enthusiasm for and gratitude toward the company and their superiors. It involves willingly donating the best years and mental effort they have to what amounts to a corporate tithe above and beyond their expected work input

Opportunists Become Other

Pragmatists have each other and their social groups at the bottom rung of the company. Idealists have the company and bask in its identity. Opportunists have no one.

The Realpolitik Tragedy of Corporate Scrum

The more enthusiastically you participate in agile methodologies within a corporate context, the worse your advancement prospects.

The reason is that the so-called "servant leadership" valued in corporate contexts is an utter sham. If you think I sound harsh saying this, ask yourself how “servant leaders” get that title in the corporate world. Do you think they spit shine the floors until someone comes along and appoints them CEO? Or do you think they get appointed CEO and then do some token spit shining of the floor to seem humble and to hoodwink the resident idealists into thinking that shutting up and grinding will lead to leadership positions? Servant leadership is a great concept in populist contexts where "lead by example" can define an eventual hierarchical structure. When the hierarchical structure is already defined, "servant leadership" is an insult to opportunist intelligence.

Let me repeat that more plainly. Being a good developer—participating gamely in team activities, learning enough algorithm trivia to pass interviews, being attracted to the best organizations using the coolest tech, and so on—is bad for your career. The real tragedy of all of this is that the current corporate structure forces you to choose between being a good developer and having a good career.

I understand why servant leadership is a complete fallacy in a established corporate hierarchy. Yet, if you care to lead by example — with integrity — as a mentor to others and see them grow, that kindness can lead to unexpected downstream opportunities for you and the apprentice. The corporation will benefit too but that would be a happy side effect beyond the human to human connection.

The Programmer’s Escape Plan

There are two forks in the road:

  1. Remain a programmer and remain a pragmatist instead of an opportunist or stop working for standard corporations.

  2. Join a free agency (also known as a consultancy).

Titles such as "software engineer", "senior software engineer", "tech lead", etc. are still forms of grunt, low-level, labor. As for "principal engineers", these are the idealists that are put in charge of committees and/or standards documents. They might not even require extra pay incentives but only the title of making it seem like they’ve arrived. Which, sadly, I’ve been only to realize the title was a faux title and ended up leaving the company that gave me that title in extreme disappointment.

Programmer Idealists come in to flavors:

  • The Expert Beginner - An expert beginner is an apprentice idealist who will force upon you weird coding standards, outdated homegrown frameworks. This person also has a conflated view of merit earned by attrition.

  • Journey Person Idealist - Changes companies a fair bit in search of new tech stacks, attraction of new cliques at different organizations, etc. Faith in a particular company is replaced with faith in the tech industry as whole spread across multiple companies and domains.

Fluff titles, as mentioned above, to watch out for:

  • Senior Software Engineer

  • Principal Software Engineer

  • Software Architect

  • Tech Lead

Opportunist, on the other hand, use a will to power mindset and utter some rather harsh words:

Programming is not a calling, and it’s not a craft. It’s just automation that increases top line revenue through product or reduces bottom line costs through efficiency.

The author makes the claim that in order to advance, you must step into more leadership positions and distance yourself from being a software engineer. You can always leverage these skills for further advancement without showing it but the focus should be on spending time with project managers, data scientists, and learning the language that stakeholders enjoy hearing. Not my cup of tea, at all, but if you are on the management track and wanting to climb the corporate latter, this a path in which you will throw your soul away in the process.

Avoiding the Delivery Trap

To gain status/title, you need to escape the delivery trap — because you are beholden to doing the work and delivering on time — you have sell the story of how you met the goals through Herculean efforts. What’s interesting is that a team who consistently delivers on time but is boring will lose to a team that procrastinates, works crazy hours, and tells a harrowing story of how they pulled off the impossible. I feel is this is a load of crap…​but there is some truth to being able to use stats and graphs to show how your contributions stand above the rest. Metrics for code quality, test suite speed, etc will help in that endeavor.

I would rather be known for improving the quality and output of other engineers in addition to the systems I work on. Essentially, working myself out of a job. Not following the path as described above. Also, I should be clear, Eric is pointing out what this looks like should you sell your soul.

Partnership and Transcending the Realpolitik Glass Ceiling

This chapter is very much about being the wolf in sheep’s clothing. Definitely not my cup of tea since you are suppose to give off the air of someone who acts, and talks like someone several stations above your current title as a grunt programmer. Examples:

  • Having a long list of contacts on LinkedIn.

  • Speak extensively about experiences at other jobs.

  • Moonlight on the side and talk about your experiences.

  • Casually site experiences on level with your superiors but in a flattering way to show you’re a peer but in a non-threatening way.

Whatever you do, don’t threaten. You have to make your boss’s life better and then look for reciprocity in return. Quid pro quo. Always be looking for options to leverage that will put you in a good light while benefiting you and your boss/company.

Avoiding Carnival Cash

Carnival cash is any perk which is devoid of value outside the walls of the company you work for. Examples:

  • Employee of the Month Awards (these are the worst).

  • Personal offices

  • Parking spaces

Interestingly, I guess I’m an opportunist in this situation due to the sheer disgust of thinking about Employee of the Month Awards. In addition, so is All Hands Meetings which I also loath.

In regards to meetings, pretending to be too busy to attend is another example of how an opportunist might get out of such a meeting.

Don’t confuse this with advice not to work hard or even having people recognize that you’ve worked hard. You absolutely can and should work hard when appropriate. Work hard to help your boss advance. Work hard to bring in extra money for your department. Work hard to generate internal and external leverage to help your situation. But whatever you do, do not work hard to please some superior in the hopes that they’ll deem you worthy of a raise someday.

Interestingly, when given carnival cash, you can deflect it in a modest way by saying it should go to your team and those who made all of it possible. For instance, without your immediate team, you wouldn’t have been able to accomplish what you are being recognized for so it should go to them. This generosity goes well for the pragmatists, wins favor with the idealist for being a team player, and shows the opportunists you don’t believe in any of this non-sense.

The Art of No

Several examples of saying "no" are espoused here. Some ethical, some borderline ethical, and one entirely unethical. What’s important to be aware of is the extremely asymmetrical relation of power you have with your boss or even the entire leadership chain. You have to build up enough leverage through other means which might include invaluable technical skills, deep knowledge of a complicated system, good at quickly debugging and diagnosing bizarre or intermediate errors, etc. Any or all of this gives you more leverage to say no to situations that might be harmful to your career.

Advancement

You have to consider yourself as something other than a basic employee. Interestingly, I’ve been thinking this way for years and always thought I was alone in this regard.

Let’s be clear about something — the entire world that you’re venturing into with these ambitions is one of sales and nothing besides. One of the main reason that engineers are so undercompensated is that we opt to create a cocoon for ourselves where we can indulge delusions of meritocracy and skill directly correlating with value. The rest of the business lets pragmatists and journeyman idealists exist in this warm cocoon, and they only charge us a 200 percent markup on labor for it. If you want to start getting some of that back, you’re going to need to get comfortable with creative embellishment.

This is definitely something I don’t want to do or even condone. Later, in the book, the author points out more ethical courses of action.

The Madness of it All

These are good questions to ask yourself:

  • Why should programming be bad for a career in the software industry?

  • Why do the denizens of the corporate world value narrative spinning more than software creation?

  • Why do we resign ourselves to playing zero sum games at the behest of paternalistic institutions?

  • Why do we cannibalistically drive our own wages into the basement?

  • Why does behaving like a decent, collaborative human being signal to executives that you’re a subordinate?

  • Why do we view it as some kind of moral duty to work endless free hours for the weak promise of future money?

  • Why do we work for micromanagers we don’t respect and companies that inspire Stockholm syndrome?

  • And above all, why are we so conditioned to think it could not possibly be otherwise?

The career path for someone who truly loves programming and joy of the craft is an insane one and completely stacked against you.

Modern corporations are truly feudalistic societies. Interesting to know that I’ve been thinking and saying this for years and neat to have it confirmed in this book.

Corporations are not considered to have personhood but they do have personalities which stem from the legacy of the founder and subsequent ego. Sadly, today’s corporations are growth driven with an intense pathology to scale at all costs. Although, there is an alternative which is a B Corp which Alchemists, itself, is striving to become.

The thing is that we don’t have to live this way! With the modern global economy it’s possible for us to live and work for ourselves however we want. We don’t have to be serfs to a feudal lord/lady. We have all the means of living on our own if we just stick to shear determination and persistence.

How to Stop Playing Games

While the last part of the book was difficult to read due to moral and ethical concerns, it does serve as a nice contrast to a more positive path forward in this next part of the book.

Where We Go from Here

By moving away from having a single boss and by being an entrepreneur, you go to having multiple bosses (i.e. clients) which allows you to diversify by not putting all of your eggs in one basket.

The Coming Crunch

Author’s Prediction: The need for software engineering talent and good engineering, in general, will give rise to autonomous developer opportunist. Companies will farm out work to these individuals or small shops.

Studies in Success — Those Who’ve Already Won

The developer opportunist does not give up hope, perspective, or high-minded ethics. They hold fast to knowing they control their destinies. The following are a few examples:

  • David Boike - A .NET developer opportunist.

  • James Grenning - Founder of Wingman software and a colleague of Bob Martin. He also invented Planning Poker which is disturbing to learn.

  • Matt Heusser - Founder of Excelon Development.

  • Thorben Janssen

  • Sally Lehman

  • Eugen Paraschiv

Building a Composite—Developer Ubermensch

A developer ubermensch has a love of the calling and craft with the following traits:

  1. They don’t spend all of their time coding.

  2. They market themselves.

  3. They are content creators.

  4. They are literal opportunists.

  5. They manage the pipeline of opportunity.

  6. They have options.

All of the above generates demand not because you might be the most skilled, smartest, or most technically knowledgeable. It’s because you position yourself to identify what others value and then uniquely deliver that value in a consistent manner.

The Developer Ubermensch is a Businessperson

As a point of clarity, the constructs of a business are:

  1. Product/service

  2. Operations

  3. Accounting

  4. Sales

  5. Marketing

This means building the actual product/service is only 20% of the initial work which definitely puts everything into a sobering perspective.

As developers, we not only eschew things like marketing, bookkeeping, operations (and even quasi-software activities like QA and UX) — we exhibit the attitude that they are beneath us. We look at the corporate world and demand that it accommodate us with roles where we need not be burdened by thinking of the business. The corporate world is all too happy to indulge our demand, pay us a third of what we’re worth, and let us exist in a bubble of illusory superiority.

We have to master all five of the above constructs in order to flip the script, manage the business, and deliver commercial value all on our own.

Developers Becoming Efficiencers to Take Control

When you compare the software engineering to other professions, especially those before the Industrial Revolution, like doctors, lawyers, etc. they have all mastered and taken control over their business domain. They don’t have to submit to all of the C-level title nonsense such as CEO, CIO, CFO, CTO and so forth controlling them. They are all of those things already. If necessary, they’ll partner up with other experts in the field and delegate anything they don’t understand to others that will support them.

Software engineers, on the other, hand don’t do this but we have the means to and much more. Not only can we delegate and replace manual tasks, we are the also the masters of efficiency. We can always augment and automate what we don’t have time for in a reliable and consistent fashion.

Turning App Dev Firms into Efficiencer Firms

In the future, as the owner of your own firm, you would not allow a client to dictate any of the following:

  • Specifications.

  • Wire frames.

  • Direction of any kind regarding software.

You have to offer a productized service through value pricing. Value pricing allows you to sell the same thing over and over for a known price. This is necessary in order to avoid the pitfalls of charging hourly rates (i.e. staff augmentation) or fixed bids (consuming 100% of the risk on an unknown project). By the way, Jonathan Stark is a successful entrepreneur who’s worth checking out if you want to learn more about value pricing.

Lastly, you also have to position yourself as an expert in automation and efficiency to be successful.

Anatomy of the Efficiencer Firm

I really like the breakdown of what makes this kind of organization/collective a successful one because I’ve come to the same conclusion as well. This is what this site is all about, after all. The following qualities make up this kind of collective:

  • Bootstrapped and profitable from the outset.

  • All members of the collective are partners, understand the value proposition, and delegate to vendors for what can’t be done by themselves.

  • They don’t rely on archaic interviewing practices but instead acquire people through recommendations, networking, and even working with people for a while.

  • All profitable contributions to the collective is transparent and measured.

  • The collective is comprised entirely of opportunists, not idealists, or the need to have a middle layer of managers and senior staff.

By focusing on the above, this opens you up to greater potential for happiness and opportunities that Tim Ferriss calls lifestyle design in the 4 Hour Workweek:

  • No commute to an office.

  • No 9am to 5pm office hours, instead you work whenever you want and when you have energy.

  • You can travel more and work in foreign countries for long periods of time.

  • You now have the chance to collaborate with people who have the same similar beliefs, values, and desires.

The key thing here is to define an operating agreement that covers explicitly what happens in the event that the partners want to stop working together at some point. It should also spell out what adding new partners looks like, in terms of who has to approve it and what kinds of revenue splits are on the table. This overhead is not intended to create unneeded bureaucracy but to prevent future messes. In a traditional corporate context, termination is a stock procedure (both voluntary and involuntary). The efficiencer equivalent should be the same. It’s good not to pretend that every commercial arrangement we enter is the last one we’ll ever want.

When outsourcing or overwhelmed by the work you might be doing in a collective like this, make sure to reach out to your social network for help. This could be people you’ve worked with before, good engineers wanting to moonlight for extra cash, or people that have a reputation to keep.

As for interviewing, the following gels well with what I’ve written about in the past as well:

For instance, consider something I’ve always thought of as a great conceptual alternative to the programming interview: hire someone for a week and see how it goes. Currently, that’s unworkable. Few staff software developers will want to quit their current job to try out another one for a week when the new one might not work out. But imagine if thousands of firms hired this way. Now the risk is gone, since you can just temp-hire on at a different one each week until you find a good landing spot. This, in a nutshell is the sort of critical mass paradigm I’m talking about. The more people that leave standard arrangements, the easier it will become for you to leave as well.

These organizations do the following instead:

  • Avoid venture capital.

  • Avoid employing pragmatists and idealists.

  • Avoid rapid scale via job interviews and hiring lots of staff.

  • Avoid obscuring individual contributions as they grow but make them transparent instead.

From Matt Heusser:

Consider two people, both making about the same per year. One is a freelancer who has about ten customers, with the largest being no more than 25 percent of his income. The other is an employee with ONE customer who gives him 100 percent of his income. Who is more at risk?

Answer:

The employee.

Becoming an Efficiencer and Joining an Efficiencer Firm

When it comes to education and training of new engineers, our industry is broken and has been for some time. There are three paths into our industry, roughly:

  • College Degree - Rare these days and insanely expensive. These use to be the standard but not so much anymore.

  • Bootcamp - These code schools (bootcamps) are all over the place these days with a much lower cost to enter. They teach you rudimentary skills to get your foot in the door via an intense 40 to 80 hour working schedule for six to nine months.

  • Self-Taught - These are people who accidentally stumbled into the industry out of interest, curiosity, sheer will, or even accidentally who slowly became good.

All of the above, except for maybe the self-taught, are not equipped to survive in the industry because they are missing so much more than the rudimentary skills they picked up in school. They still need to know how to be good communicators, work with others, implement requirements successfully, recover from production failures, work with customers, manage projects, and so much more.

There is no school that provides that today but maybe that will change in the future.

But How Do We Fix Non-Efficiencer Corporations?

The fix, as iterated over above, is to find ways to partner with the developer opportunists. Recognize they are experts at efficiency; are independent thinkers and problem solvers, and can work/live however they want to get the job done. Focus on the outcome, not how they live, hours worked, or where they work.

Concrete, Immediate Steps You Can Take to Become an Efficiencer

The path to freedom can start with small steps:

  • Start with self-directed on the job training by looking for inefficiencies in current processes. The goal isn’t to solve this by writing code but identifying those inefficiencies that can be eliminated instead. You might have to pitch this to several people before anyone taking the byte. There is no downside to practicing this, though, so don’t give up.

  • Never sign a non-compete because you should have the freedom to focus on your own goals and desires in addition to what the company is hiring your for.

  • Stay away from big companies.

  • Politely end interviews, immediately, that involve trivia or any kind of puzzles.

  • Find a company instead, that helps you raise your own profile and get your name out there. You can build your brand via a consultancy but do so on their dime.

  • Look for organizations that will embrace you as an developer opportunist and want to partner with you.

  • Start a web site and post articles, learnings, etc.

  • Build a productized service and sell it. It will teach everything you need to be an opportunist. Start small. The lessons learned from this are worth their weight in gold.

What This Looks Like, Long Term

  • No, I will not work endless overtime for the same amount of pay.

  • No, I won’t accept that I can’t enjoy making a living because "that’s why they call it work."

  • No, hiring authority, I do not need to be thankful to have a job.

  • No, I will not accept 2 percent pay raises per year, independent of how much value I add to a company.

  • No, I shouldn’t need to commute, dress up, and punch a clock to perform knowledge work.

Appendix A

Here are a few additional resources that might be of interest: