Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

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 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.

A potential solution to this issue, is to hire engineers with more diverse skillsets. Deep understanding of mathematics and classical algorithms is fantastic for software performance, and low level details.

On the other hand, at a tech company - your software is literally your revenue stream. You are hiring people who don't understand your business - to build and grow your business.

Maybe hire some developers with strong business skills, and a good understanding of the economy and your market - and put them on a team with more traditional engineers. In doing so, you get someone with the big picture, and someone with the details working together and might not even need another PM.

Just my thoughts.



Anecdotal I know but I've been told that my business knowledge and curiosity is not welcome nor wanted whilst developing and that I should be more single minded to churning out code. We live in an economic environment where specialisation is valued over all else. Polymaths and generalists struggle in this environment unless they found the business themselves or are lucky enough to get picked up by a large company to head up a team.


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 entrepreneurial it looked.

I removed the sections from my resume, removed all of my contract work too - only listed the internships and found some other grads (that got jobs) resumes to copy the language style. Pretty much instantly my resume was getting me double or triple the interviews.

Bummer too, because I worked my ass off and always had the false impression that employers would like that.

Sometimes its the gap between marketing (how they want the company to appear) and HR I think. Marketing wants innovators, HR wants workhorses that move in a strait line and don't try new things.


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.


I've had the same experience as the poster you're replying to. I had to remove any bits of the fact that I bootstrapped my own fledgling (small, successful in it's own right, yet not capable of sustaining full-time wages) startup from my resume to get interviews. I was told that my resume was "intimidating" and "sending the wrong signal" by friends who are developers whose input I trust.

But I completely agree with what you've said. I am a problem solver or a product engineer or whatever this skill set combination is being called these days. I pull from a wide range of experiences to solve problems and I'm not very happy when I have to work off of a rigorous spec.

Unfortunately, that doesn't mean much to most employers in my experience. I don't fit in to most places and most places don't know what to do with me. It's made for a rather frustrating career over the last decade but I simply don't know what else to do.


How do you feel about the potential for high turnover with entrepreneurial types, as it seems the general consensus is they will inevitably leave to start their own thing? How long do you expect someone to work for you before hiring them, getting them up to speed with your system, and integrating them into the company is a worthwhile investment?


When I get asked this in an interview, I always answer the same way: yes, I will probably go to the next gig faster than other employees. But I will get up to speed faster, and I will produce more output for the business itself in the time I'll spend in your company.


This is the reality but my question was more about perception vs reality.


When you leave, much of your knowledge about the thing you helped to build will leave with you. They want that to stick around.


Then pay for it. It's pretty much that simple.


It might be a question of commitment signaling. Some reviewers might ding candidates that seem to have a ton of work going on outside of work. Maybe even more so if they see a candidate hasn't held a job > a certain # of years before.

Not sure if HR thinks that deeply during resume review, though. If you're not getting past that screen it's probably just match-the-buzzwords-listed-in-posting density—more "filler" words (started awesome website, did amazing things) means less % matching words


Young engineer, I tried being entrepreneurial. I confirm team leads don't like it, even if the company displays the marketing you describe. Better become more skilled in your field than just overly motivated. It's sad that we only understand that after a few years in the job.


I had a similar background--worked my way through school doing small to medium size freelance projects. Much of my freelance work was contracting for one company (where I was mentored by one the senior developers) and few startups, so it wasn't quite as bad as what you experienced. Some employers think you're not "office material" if you happened to be a hard-working, independent worker that managed to pay their way through school while learning on the job. I assume I probably dodged a bullet working at any of those places, if that's the way they hire.

After graduation, I had a few tell companies me that my work during school as sort of a "black mark" and I think it's sort of humorous looking back at it now. Currently, I'm the technical lead for my dev team and the contract work I did while in school is probably the best experience I had for the work I do now. Gave me a broad range of experience that reinforced the theory and concepts I was learning while in school.


Interesting. Perhaps something I can learn from. What kind of companies have you worked for (large corps / startups / SMEs?) and what kind of work do you do for them (any specialisations)? How do these experiences contrast to your pre-employment/self-employment experiences?


I do full-stack development. Front-end, back-end, some server admin, DB, UX, SEO, etc.

I worked at a F500 building tools to visualize big data and had a great time. Learned a lot and had a lot of freedom.

Afterwards, a VC funded startup - didn't really fit in, most of my co-workers where hardcore academics and it had a lot of micromanaging.

Also did some contract gigs, subcontracting for another company which could be good, bad or neutral (all depends on the client).

Self-employement is awesome, because you get to explore a ton of new things. You get to learn about SEO, business models, cutting costs to increase profits, increasing conversions, brand image, UX, etc. You also get to know your audience really well.

In my case, the biggest downside is I could never build a strong network because most of my revenue was coming from ads and donations and the target audience was younger.

It's easier to network when you are out and about, and always working with people who have their own networks.

I'd love to start a company (on a bigger scale) some day, when I have a stronger network, a larger skillset, and some capital so I can make sure I am feeding myself every week :)


How did user testing go for the UX portion of your work?


Is HR the first line of contact when applying in most companies? Where I work I think we (the developers) get all the resumes that come in and decide to decline or continue the process, HR only handles the logistics


May be you should've applied to different companies with different values?


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 am A+ in a specific platform, A in a couple of market segments, B+ in a handful of valuable technologies, B in many professional skills, C+ in most business activities, and C in everything that I have never encountered before. I don't need to be A+ in everything I touch and I am definitely not just a C in every single trade.

You don't have to start a business or be lucky enough to head up a team at a large business to get a chance to apply your skills fully. I don't want to do either so I consult with small-to-mid-sized business and research+plan+code+test+train whatever they need. For someone on a W2, this seems unconventional and risky. Don't want to sugar-coat it - it is. But what it's not is unsatisfying.

If you are in a position in life to take a small risk on yourself, pick up a small consulting gig that is more than just pure coding/technical. The more you perform like a vendor and business partner and less like an hourly contract employee, the closer you get to applying your full range of skills.


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.


Like anything, it depends. If you don't like being a cog in a large machine, look to smaller shops. I hate working in large firms precisely because I'm bad at shutting up and being a cog.

And you know what? In big shops, painting outside of your lines actually can cause problems. Questioning decisions on things going on outside of one's domain causes slowdown (at the very least, wasted time in meetings where people explain why that stupid idea actually has to be that way, etc.) and frequently, conflict, because when the norm is "stay in your (metaphorical) cube", questioning decisions can all too easily look like an accusation of incompetence or as a power play.

Go where your other skills have value.


I think it depends on the job for which you're applying.

We want our senior developers to be willing to dig into business requirements and constraints without being asked to. Curiosity, orthogonal business knowledge, etc are important at that level and higher.

However, we've seen multiple times that the junior developers just can't do it with the rare exception. They have enough work getting up to speed on one or more of: the language, the large internal system, the large client systems, how the client works, how to be an employee, how to deliver value over the long term and not go 2 weeks with no delivery then 2 weeks with, etc.


You're right, sounds like maybe a bit of over-generalization from your situation :)

Do you have a direct manager who talks with you about your career growth? A good one might help you find projects that engage your broader interests. There are certainly roles and projects that involve some degree of inter disciplinary work, and not just at founder or team lead levels. If not at your company, there are certainly some at others. Startups especially welcome diverse contributions from early employees.

Hope you find a good outlet for your interests! If not in an engineering role, maybe try a side project.


I was always interested in technical PM roles, but I'm best at full-stack development. The most important work criteria for me, is to see the business as something I'd invest in. If I think the product matters (can have a serious positive impact on it's customers, rather than a marginal one), it's easy to get excited about it.

I have a few dev managers and experienced engineers who I've kept in contact with from an old summer gig - they all think I should join/create a startup.

I'm actually on the job market right now (Seattle) - but considering moving to CA because recruiters in that area seem to like me a lot more. Might be a culture thing.


I feel the same way, it's hard to care about something you wouldn't use or evangelise about, unless it's deeply niche and complicated enough to go over my head and make me feel dumb.


Well it looks like you got a positive signal from Instacart :) Good luck with the hunt.


Thanks for your kind words of encouragement. I have decided to specialise in machine learning. It perfectly suits my analytical and technical appetite. Also I would love to work in robotics so it seems like a natural path. Btw: nice site http://codingforinterviews.com/ . I will definitely give it a go :)


Don't work in a company with the people who told you that. It's not only wrong, it's bad for business, and I constantly see the negative consequences of this worldview.


Geeky (single focus) developers are - cheaper

- do not get distracted by politics / business

- easier to control / manipulate into lower salaries


I seriously doubt there's any supporting evidence for the idea that people focuses on coding over business have any trouble negotiating a reasonable salary.


Lots of cognitive bias there.


I agree. In fact, the more I look at this problem, the more convinced I become that coding shouldn't be an end to itself. Very few companies need super-smart generic programmer cut-outs. Instead, they need business folks who can program.

It makes sense if you think about it. If software is truly eating the world, it's an upheaval on the scale of writing. Nobody hires specialized people to write; that's idiotic. Writing is so closely associated with what we do day-to-day that whatever your job (in the business sector), you're expected to be able to form a sentence and write it down. Same goes for programming.

I have no idea how long it will take to fully make the transition. A hundred years? Twenty? It'll be interesting to watch, though!


That sounds like a good idea, until you realize that developers with a strong grasp of coding AND business are rather rare. If you're a growing business, it's hard enough to find enough really good devs as it is, and now you want to add in another, orthogonal skill set? Good luck with that.


Ask not what your left or right brain can do for you. Ask what both of them combined can do for your company.


Off topic, but that doesn't resonate for me.

Can't say much for MS, but for the others the essential CS skills questions (should be...) relatively uniform for all experience levels. i.e. they are at graduate level.

Plus, Amazon count on these 'a lot' https://www.amazon.jobs/principles

Possibly more than the CS side of things in my experience.


Triplebyte has a blogpost[1] that seems quite relevant. Most companies seem to want "product programmers"[2], as opposed to technical or enterprise programmers. The second link below is another blogpost by them explaining this taxonomy.

It would be interesting to see how much this applies to non y-combinator companies (which is what their study covered), but I'd have a guess and say that, for most startups, quite a lot.

1. https://data.triplebyte.com/who-y-combinator-companies-want-... 2. https://data.triplebyte.com/a-taxonomy-of-programmers-d0e9d8...


> 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.


> It's not clear to me why that knowledge would be especially useful to a principle engineer at Amazon.

Assuming that Amazon has any equity portion to compensation (which is common in even large tech companies, not just startups, though I don't have any direct knowledge of Amazon's typical pay arrangements) its pretty critical to understanding what he is getting in exchange for the labor he provides, so there's that.


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


Depends on the role. For example, I think a postman is a government employee? In that case, about the same as I'd think of an Amazon engineer who didn't know that. I have no idea how they don't know it, and I think a little less of them for it. But if it's not relevant for their work, I don't judge their skill by it, and I don't think less of them than I do of anyone else.

If you want me to be - offended? shocked? contemptuous? - of what someone doesn't know, please tell me why it's so important for them to know it. Not just why it could potentially be useful for someone in their role. Why it's so important for anyone in this role, that this particular thing gets singled out, suggests in lieu of all other data that they're incompetent.

I'm an engineer at a publicly traded company. (Or so I assume. I could be mistaken.) I can think of dozens of things I don't know that would be useful for me to know. I do know what a publicly traded company is, but this knowledge is not useful for me in my role.


Would you want to work with someone who "is sure" of a trivially verifiable fact? It's ok to be ignorant ("I have no idea who owns what") but to be sure of something that pants-on-head false?

What else are they "sure" about?


Well it isn't. Officially it is a republic. A democratic one, but a republic. Unofficially political power is so unevenly distributed it should be called an oligarchy. Officially, North Korea is also a republic.

Now, if the person thought the President was a king of a monarchy, then I would say they have been listening to too much talk radio.


> Well it isn't.

Yes, it is. Or, at least, if not, not for the first reason you present.

> Officially it is a republic. A democratic one, but a republic.

A democratic republic is still a democracy (usually, a representative democracy, but since any political system which isn't a monarchy can be correctly called a "republic", a direct democracy could also be a democratic republic.)

The idea that "democracy" and "republic" are mutually exclusive categories is quite wrong.

> Unofficially political power is so unevenly distributed it should be called an oligarchy.

And so connected to wealth that it should be called plutocracy, according to some, sure.

> Officially, North Korea is also a republic.

And a democratic one, too.


Originally I was going to say "democratic republic" but then it becomes a game of minutia. Not knowing that Amazon is controlled by a board of directors (elected by shareholders, the owners) is just like not realizing the president is elected and we don't have King Obama.


> Not knowing that Amazon is controlled by a board of directors (elected by shareholders, the owners) is just like not realizing the president is elected and we don't have King Obama.

Sure, and it would be very surprising for anyone not to know that, but I don't see how it makes them any less qualified to do their job.


If someone believed in King Obama, would your surprise elevate or diminish your confidence in their general-purpose information gathering skills?


This would be a good analogy if the guy didn't know he worked for a tech company.


> 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.

This is terrifying. I wouldn't be surprised if his 401(k) was 100% Amazon stock "because that's where he works" or something.


100% of what stock, didn't Bezos own everything?


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.


My experience in interviews is that my interest in and focus on the end product and business make me appear more lightweight technically. "Not enough of a nerd"...basically.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: