Live data from Hacker News

Heisenberg Developers (2014)

mikehadlow.blogspot.cl

131–140 of 193 posts

Re: Heisenberg Developers (2014)

#131
post #83

Earlier quoted context omitted.

I spent my teenage years building fan sites and social networking sites for games. I made enough money to pay off college, get a nice apartment by the water and have a couple k leftover come graduation. I was curious why I wasn't getting a lot of hits on my resume, so I talked to a recruiter at a networking event who had seen my application (for one of the "unicorns") and she said they where uncomfortable with how en…

That's odd. We get excited when we see an entrepreneurial profile like yours. We have several developers who want to start companies and actually try to help them along that path. The benefit to a motivated engineer is you can give them problems to solve instead of specs. The outcome or results can be less predictable but can also be much more effective.

When I got out of contracting, and later after 2008 business failure, I lost count of interviews that went thus:

"You're perfect for the role", "You have just the skills we need", "you're by far the best of those interviewed"

but by email later, sometimes directly

"we think you'll get bored", "we think you'll leave after six months" etc

(Sometimes, "we think you're a bit overqualified")

For sanity's sake I went on a few contract interviews, and usually got an offer.

My experience was that employers are utterly terrified of someone who's got some entrepreneurial or business history. Sure the money was less, but there many reasons to want to go back to employment.

As they didn't like it, I always wondered why so many invited me to interview when the 5 years of successful business and 4 years of contracting was very clear to see on my resume.

Re: Heisenberg Developers (2014)

#132
post #63
post #9

The story begins with a new feature request that the "business" thinks is needed while the "developers" think is not. It's really hard to pick sides here without knowing more about the specifics. I've seen situations where developers are completely wrong about the business value of something and I've seen it the other way around. If the new feature was indeed critical to the business then the boss finds himself in a…

> Now obviously the new PM and his buddies (I've seen this before) only make everything worse. "Jira" or "Scrum" or "Agile" wasn't really appreciated by the old team used to doing whatever they wanted to do. Everything I have read about agile is that if you do it right, everyone is happy. The customer, the developers, and the managers. Agile itself is supposed to be development-centric. Tonight, I realized that Agile…

Take a read at the Agile Manifesto, and I doubt you'll find any point there to criticize.

But then, take a look at any agile methodology, and try to explain how it fits the manifesto. Or better, explain how adopting any "agile methodology" fits the manifesto by itself.

Re: Heisenberg Developers (2014)

#133
I say it's a mistake to expect to have creative control at all, over something owned by the corporation you work for. Best to accept that it's not your baby you're working on. You don't get the profits or the glory or any of that. Just do your tasks and treat it like what it is: a job.

Creative control and passion and all that is for side projects and things you build yourself. I just feel it's setting yourself up for disappointment to think otherwise. Companies are not founded to provide the ideal environment for software development. They are founded to make products and hopefully a profit.

You might argue that a smart business person would provide that environment in order to get their product built, and maybe you'd be right, but that also risks building the thing developers want to build as opposed to what could sell. And as soon as you intervene, poof goes the ideal environment. So even if the environment exists at a company, as at the beginning of this story, it's best understood as a happy accident and shouldn't be expected to last.

Re: Heisenberg Developers (2014)

#134
post #105
post #32

Not 100% convinced by the conclusion. There is good project management which can be relatively fine grained, but it doesn't have to be micromanagement and it doesn't have to be a death march. There are some basic red flags raised: > Our project manager would be displeased when tasks took longer than the estimate and would immediately assign one of the other team members to work with the original developer to hurry it…

> Shouldn't happen just at the whim of the PM. A sane environment would work by a developer asking for help first, and it actually sounds odd that you have capacity for a PM to throw someone to just 'hurry up' tasks The problem is that if the PM decides to do that, the developer has no authority to refuse that. > Any PM who says features are set in stone isn't doing their job. A PM's role is to handle change and exec…

Maybe at some companies. Where I work, Engineering Managers and PMs are totally separate. So Engineers have much more representation.

But, even in places where this is not the case, they are willing to hire-- spend money - - to speed the project up. If it's made clear, not just to the PM, that it's going to cost money and have no positive effect, it should be a clear business decision.

Re: Heisenberg Developers (2014)

#135

One issue with how developers are hired these days, is many large companies are hiring largely for classical knowledge (aka, memorizing: Algorithms, DS) and mathematical ability. Try interviewing at MS, big G or Amazon and you will see what I mean. These developers are great as code monkeys, but a lot of them don't have any idea what their code contributes to, or even how their business makes money. I attended a hack…

> I attended a hackathon with a number of Amazon employees, and one of my distinct memories was a Principal Engineer who didn't even know what "publicly traded" meant and was sure that Bezos owned 100% of the company.

It's not clear to me why that knowledge would be especially useful to a principle engineer at Amazon. I think it's a generally good thing to know, and difficult to avoid picking up. But clearly someone did avoid it, and I don't particularly expect that to reflect in their engineering competence.

Re: Heisenberg Developers (2014)

#136
post #2

This is exactly where my job is headed. We hired a project manager who frankly knows nothing about tech. Suddenly, we the developers are no longer able to file tickets ourselves and the tickets themselves need to be blessed and have specs the higher ups can approve. One liner for a hot fix that's filling the error logs? Needs a ticket - a ticket we can't file. All pull requests need one or more associated tickets. I'…

As a developer, I love having tickets linked to changes! It makes it trivial to trace a git merge to a review and then the original use case.

This allows commit messages to be more succinct and technical.

Also, if your company is publicly traded in the US, there are requirements to document changes from SOX.

Re: Heisenberg Developers (2014)

#137

One issue with how developers are hired these days, is many large companies are hiring largely for classical knowledge (aka, memorizing: Algorithms, DS) and mathematical ability. Try interviewing at MS, big G or Amazon and you will see what I mean. These developers are great as code monkeys, but a lot of them don't have any idea what their code contributes to, or even how their business makes money. I attended a hack…

What is it about programming as a profession that attracts people who believe they are all things? When becoming a civil engineer do you take a large number of business courses? When becoming an electrical engineer do you take a large number of business courses? When becoming a doctor do you take a large number of business courses? When becoming an astrophysicist do you take a large number of business courses?

Why are you not suggesting that ethics should be a larger portion of the programmer's training and skill set. Perhaps while building the infrastructure for the next century we should all think long and hard about the ethical implications of what we're building rather than just racing to get the next round of funding or a positive report by some Wall Street analyst on the other side of the country.

Most code bases look as though they've been built by business analysts rather than professional software engineers. The number of security exploits is a testament to this in practice. What we have here is basically a repeat of Wall Street's bond market in the 80's, just in a different industry. Because of the market fundamentals most any idiot was making a killing. Most of these bond traders actually were not terribly bright, but they were making money hand over fist, and so, they thought they were geniuses. In the end it really didn't work out well for anyone. For a good overview of what I'm referring to you can read "Liar's Poker."

Eventually these idiots were replaced with professionals, and to work at any of these shops one must now first prove, through both schooling and certification, that one has a solid grasp of a large knowledge base. If you want to become a portfolio manager, and you already graduated from Columbia with a degree in finance, that's great but you still need to go get your CFA. Google CFA and then compare that to your average programming interview. Just the Level 1 exam has over 3,000 pages of material. There are 3 levels. You basically don't have a social life for 18 months. And most of the time this is something one does while holding down a full time job that already assumes they own your free time. Lawyer's bar exams and the Board Certification process are equally grueling.

I'd be very happy with more of an emphasis on classical knowledge. A strong foundation based on a knowledge base of classical knowledge is the foundation of any professional engineering society. Patronizing someone with a firm grasp on this knowledge by saying that they are "great as code monkeys" betrays an enormously immature approach to one's profession.

Re: Heisenberg Developers (2014)

#138

Oh, the joy of being a product manager for the particular type of programmer who, by virtue of being a programmer, also knows absolutely everything about absolutely everything. This is the type that refuses to tell you if they think, completely ballpark, whether something will take a day or a week or a month, but if they disagree with a tiny aspect of the feature you've brought them, the deep domain knowledge you wer…

Ha, I usually have the opposite problem (and I'm on the other side of the table). Product guys (and they're always guys) telling me to design the thing they want me to ship, because they suck at making decisions and want someone else to do it. (Of course they phrase it differently.)

No dice, it's my job to build the thing and your job to decide what the thing is.

Re: Heisenberg Developers (2014)

#139
post #49

Earlier quoted context omitted.

That's a sign that you have what it takes to start consulting on your own. Every client I've ever had has appreciated my non-programming skills. I've never taken a client until I thoroughly understood the business and I have rejected many potential clients because I did not agree with the business-end of the software need. Specialization is indeed valuable but it's not a binary master-of-one vs jack-of-all market. I…

I appreciate your perspective however right now, due to personal circumstances/ bureaucratic reasons, I need a full-time job. I have run my own businesses previously and enjoyed it immensely however they also burnt me out. I learnt a lot from this that I will take with me. My experiences since then have made me realise I should apply the approach from your 1st paragraph more in future.

No worries mate. Though notice I said consulting repeatedly and contrasted it with running a business or being employed. You can sell your services without having to run a business. I don't want to hire anyone, advertise, have an LLC/S-Corp to manage, deal with licensing, or even print business cards. I just want to show up, do the work, and get a check.

Re: Heisenberg Developers (2014)

#140
post #135

One issue with how developers are hired these days, is many large companies are hiring largely for classical knowledge (aka, memorizing: Algorithms, DS) and mathematical ability. Try interviewing at MS, big G or Amazon and you will see what I mean. These developers are great as code monkeys, but a lot of them don't have any idea what their code contributes to, or even how their business makes money. I attended a hack…

> I attended a hackathon with a number of Amazon employees, and one of my distinct memories was a Principal Engineer who didn't even know what "publicly traded" meant and was sure that Bezos owned 100% of the company. It's not clear to me why that knowledge would be especially useful to a principle engineer at Amazon. I think it's a generally good thing to know, and difficult to avoid picking up. But clearly someone…

What would you think of a government employee who didn't know the US was a democracy?
Post reply on HN