More on this book
Community
Kindle Notes & Highlights
Contrary to what Linda accused her of, the reason for not providing estimates wasn’t some kind of principled stand but rather an avoidance of wasting time. Things happened, priorities changed, and long-tail estimates were always wrong.
realize it’s a tough sell. You have budgets and people looking for forecasts, and ambiguity doesn’t sit well in that world. The next way that we do things differently is that we invite our clients to consider software development as a service instead of considering software as a commodity. You aren’t buying a web application the way that you’d buy a building or a tractor or something. You’re partnering with us to expand your organization’s capabilities.
“But really, we suggest that they start to think in terms of a monthly software budget. It’s a question of what you want departmental spend to be on growing your software’s capabilities versus maintaining existing software. And where we come in is on the capability growth end.
“Well, two things. First off, I’m not actually a manager; I’m a developer. And secondly, we actually don’t have any interest in expanding. We’re happy keeping our team intact, working on one project at a time.” Now Bruce looked truly puzzled. “Well, take it as a compliment that I thought you were the manager, since you’re obviously pretty savvy. But why didn’t your manager make this trip along with you?” “We don’t have a manager or any kind of role like that,” Emma offered. “We’re a partnership, like a law firm.”
Re thoughts about Grove's pancake factory expansion. Similar idea. Not everything has to expand. The larger industry can be impacted by improved best practices and tools.
On the other hand, acting as a contractor does not set you up for long term success. You will not be as motivated to further the company's larger goal and to step outside of your role.
“We have a network of groups with skills and beliefs similar to ours. New players are constantly getting added. Whenever we turn down an engagement, we refer one of these groups, and we take a cut. We currently have a pretty good stream of passive revenue from referral business, and that seems to be growing. It turns out that clients tend to be pretty happy with this model.”
On my way out the door, I was offered more money and the coveted software engineer II title. I didn’t take it, having been soberly schooled in “the dangers of the counter-offer” by a recruiter taking himself entirely too seriously, but I did note it. For all of their talk about meritocracy, corporations seemed lightning quick to reassess your “merit” when you had other options.
According to a recent article written by Bock, the best current technique they have as part of the hiring process gives candidates a test that simulates work they would actually do, but it only explains 29 percent of a candidate’s future performance. This is an improvement from the 14 percent rate of the unstructured interview and from the 7 percent rate of checking their references, but it’s hardly a lock. You’d have better odds at any game in a casino.
my mechanism for interviewing candidates for software development jobs is to ask them to write code and then to review it with them, but even this I find to be marginally effective.
The particulars don’t matter, but the point does. Pragmatists have their real thing that they care about, and it isn’t the job they’re doing. This is an entirely rational means of ego salve, similar to a teenager making a big to-do over how he doesn’t “believe in” the prom because of some philosophy or another that he’s adopted. Getting dates isn’t easy and the attempt may mean embarrassment, so it’s a lot safer to create a choice narrative around not trying in the first place. Corporations assemble themselves into pyramid structures where advancement, like prom dates, is a zero sum game. It’s
...more
Is stability worth $75 per hour? That’s a question that I cannot possibly answer for anyone but me since worth is in the eye of the beholder. But what I will say is that with a full year of $75 per hour (or $150,000 per year) in his pocket, a former pragmatist could hire a commission-based salesperson and an administrative assistant and still have money left over for incidentals (assuming he had the upfront capital to pay the workers before leads were generated).
I feel like that could only really apply for companies that sell software development as a service. But what about product companies? No way will your commissioned salesperson have access to similar clients and even if they did, then there is only so much that a solo or single team company could build in a reasonable timeline.
So you make your company an extra $150 an hour by being awesome, and they toss you a buck. And the next year, they toss you another. Then, maybe in year three as an overachiever, you’re “ready” for a promotion. They bump your pay by $10,000 annually, bringing you up to a total increase, over the course of four years, of $7 an hour. In your time at this company, you’ve earned them an extra $1,200,000. They’ve responded by letting you keep $20,000 of it.
Why do idealists work such long hours? It isn’t because they sit down one day and think, “Gee, if I put in sixty hours per week, I’ll eventually get a slightly larger pay increase.” In fact, it’s precisely because they don’t think that. It’s not really about hours. It’s nominally about proving their dedication to the company’s cause. But it’s really about proving their prowess within a constrained, artificial environment.
In the first place, the entrepreneur-opportunists starting the company are probably not folks with a lot of practice making these sorts of personnel evaluations. Secondly, seniority via loyalty and tenure is the standard corporate narrative, so a founder figuring things out on the fly is likely to pursue this strategy.
So many of the trappings of working one’s way up the corporate ladder are laced with the culture of faux ownership. It’s no accident that managers and vice presidents with long tenure are the ones that get the first class plane tickets, corporate credit cards, and the best hotel rooms. Are things like that really necessary for the business to operate efficiently? No, of course not. They’re just built-in incentives for idealists to offer their services in perpetuity for the company.
Remember, owners aren’t paying their employees for completing specific tasks with obvious value. They’re paying for laborers to show up and do whatever an owner or faux owner tells them to do.
We’ve created a corporate structure that separates people so far from the value of their work that the only reliable metric offered for value is, “Did you come to this building?”
This creeps insidiously into even the most benign-seeming corporate institutions, such as morale-boosting activities, company perks, and career counseling sessions. All of these things exist ostensibly to show you that the organization values you as a human and that it will act as a steward for your career. But the real, simple, dollars-and-cents truth of the matter is that somewhere there is a line item on a piece of paper that demonstrates cost of perks is exceeded by cost of turnover.
The earliest incarnation of the corporation was almost certainly formed as a way to guarantee legacy—a way to establish an institution that survived the mortality of its founder. In a very real sense, it’s commercial religion.
After the war, when the government sought to roll back the benefit, the now-entrenched industry resisted. The result was that an almost-whimsical, temporary tax benefit would establish corporate employment as the key to having affordable health care. As anyone familiar with the US health insurance system knows, this remains true even today.
The leadership structure still retained the shape of a pyramid, but gone was the naked king of the hill approach that had previously existed. In its place stood systems, processes, controls, charts, and management fads, administered by the newly defined idealist class of the workforce. These systems and modern ways of thinking were effective in that they allowed the efficient globalization of manufacturing, but they also neatly separated labor from the obvious measurement of its value. The bureaucratic idealist caste remained molded in a pyramid-shaped structure, but the navigation upward
...more
Is it likely that you can parlay $200 into an empire? No. Is it likely that you’ll find steady work without prior experience? No, of course not. Barriers to entry still exist, but not the way they used to. You couldn’t bootstrap a car factory because you couldn’t afford it. Cost is not a limiting factor any longer in the knowledge worker economy.
You still need to invest quite a bit to start a software product company. True you can start a service company with only a computer.
Make no mistake. I got the job done and earned accolades at the office, but I reserved working overtime for activities that maximized my position, rather than a company’s. During the course of this time, I did, in fact, exhibit loyalty. It was just that I exhibited loyalty to humans rather than to organizations, being sure not to leave people in the lurch and to keep in touch, providing good references and opportunities where appropriate.
Deciding to become a mercenary will simply make you a mercenary. It won’t make you a CEO.
This transformation into an opportunist is, at its core, about altering your perception of yourself. You need to stop viewing yourself as a software engineer II or a QA specialist or a dev manager. You need to stop viewing yourself as an employee of your (or any) company and start viewing yourself as the owner of your own personal brand and operation. You are an island. You are other.
If you’re a software engineer, your boss asking you to put in a few fifty-hour weeks ahead of the upcoming release is perfectly reasonable, if something of a bummer. But if you’re a free agent, your client asking you to work ten hours a week for free is perfectly preposterous. The difference in thinking is that it’s now reasonable is for you to ask, “Why would I do that? What’s in it for me?”
The most basic paradox of corporate Scrum is thus the edict from on high to be autonomous, but not so autonomous as to stop listening to edicts from on high.
Close your eyes for a moment and imagine a boss. Does the boss account for yesterday’s and today’s work to his peers and superiors every day? Does anyone “pair” with the boss? Does the boss have a “boss master” telling him how to behave during meetings? Does the boss write his phone number and upcoming days off on a whiteboard? Does the boss “demo” things to his boss every week or two? Of course not. These are activities better suited to an intern. If you’re doing these things, your behavior is so un-boss-like—so subordinate—that it will be impossible for opportunists to view you as one of
...more
Opportunists are busy figuring out how to stop being considered programmers, even if it means potentially getting fired.
Go into any sufficiently large programming shop and you’ll hear the philosophical musings of a journeyman idealist. He’ll hold forth (intelligently) on how the productivity boost from buying the dev team extra monitors would let management recoup a return on investment within the first month. He’ll know which programming language would be best to use for the upcoming project and why it would have been better to retire a legacy application six months ago instead of letting it limp along. Yet he’ll be unable to articulate why a person in a suit from “the business” is making these calls instead
...more
All of this is not going to be to advance your fortunes within your current company, of course. This is the company that brought you in as a line-level programmer, and getting them to see you as anything but that will be nearly impossible.
If the manager’s role were a pure matter of efficiency creation, then many, many high-performing teams would simply not have managers, since the sizable cost of a manager’s salary would not offset the diminishing returns of trying to squeeze a bit more efficiency out of the group. Let’s drop the pretense, then, that the manager makes the team operate significantly more efficiently.
Yes it can. Working very efficiently on something that doesn't forward the bigger goal has the effective efficiency of zero.
If you want to improve your lot, you need to find a way to make your evaluation about narrative so that you can spin it. The organization demands its expected output and disproportionately praises the planners when expectations are exceeded.
Any time you have lulls in your expected software delivery schedule, fill those lulls by volunteering for meta tasks around software development. Volunteer to audit the team’s use of JIRA and see if you can’t come up with a more efficient process. Schedule some talks with business analysts to learn the domain so that you can coach the rest of the team on it. Dig up your team’s yearly goals from some back email and do a research project, figuring out how to make those goals more likely. Do this during your lulls and, if you’re so inclined, do it during your spare time. Once that’s established,
...more
Part and parcel with doing the meta-work is selling that work
Of course, you don’t need to approach this quite so cynically; managers and executives really can have outsized impacts on organizations via leadership skills or uncanny strategic ability.
Remember, though—never threaten. Even in a situation where what you’re saying is a threat, couch it as “just business.” If you take a gig in another department or accept another job offer, don’t throw it in anyone’s face or delight in it. If anything, present it in such a way that a boss or compatriot is left in the end agreeing that you’re making a great move. You’re not vanquishing foes and you’re not settling debts—you’re playing the game well, simply creating advantages for yourself.
The trouble here is that the idealist/pragmatist taking this advice is not offering anything. He’s a student asking for a good grade and some extra credit, not a partner dealing with another partner. If you were running the laundry service mentioned earlier, would you ask your customers for more money because you were “certified in leadership”? Of course not. That’s worthless to them, and you know it.
Opportunists don’t demand merit evaluations, and they don’t wait for performance reviews. If you want your boss to really hand you some valuable benefits, you need to do the same for her. Make her life better somehow, then look for reciprocity. You don’t make your boss’s life better by “demonstrating integrity” or whatever pap tends to wind up on official performance review documents. You make her life better by improving her prospects. Find out on what basis she’s being evaluated and what her goals are, and then take steps to make those things happen. The official stuff doesn’t matter.
...more
Bear in mind that the opportunist’s peril in this situation is not? that she might fail to negotiate a cut. The opportunist’s peril is getting swept up in the organization’s normalization of not ever being at the negotiating table to try to claim that cut.
Never, ever be in a position where being patted on the head and tossed a treat is an acceptable substitute for compensation for the value that you bring. 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
...more
For all of its khakis and team building activities, modern corporations look like feudalistic societies, but with donuts in the break room.
The modern corporation’s pathology derives precisely from the mandate to scale at all costs.
Ironically, the way to get above the waterline and into a position of true autonomy requires substantial ruthlessness. Those who climb the iceberg to get to the top are the ones most likely to choose advancement over the right thing every single time. And when you consider that not everyone looking to claw to the top is interested in using the position to do what they feel is right, you can see that becoming the big boss to do the right thing is a truly quixotic concept.
I want to start offering them $110K per year, but now I have a problem. I can’t do that without bumping the pay of my five managers and my VP as well. In other words, I can’t adjust line-level salary in a vacuum to respond to ebbs and flows in labor supply. I have a growing pyramid-shaped dog being wagged by that tail.
The crunch to which I refer is the one that will effectively expel developers from the ranks of large, unwieldy organizations. It will happen in fits and starts and will appear slow to develop, to the naked eye, but make no mistake. It’s in progress and will continue. The trend will drive software developers to three main camps: large software companies, startups and small product companies, and custom app dev shops (including solo freelancers).

