Hacker News new | past | comments | ask | show | jobs | submit login
Not Saying Winter Is Coming, but Where’s Your Coat? (facebook.com)
454 points by KentBeck on Aug 3, 2016 | hide | past | favorite | 448 comments

To be honest the dot com crash caught me unprepared, and the feeling of having 10+ million dollars in future equity go to less than $100K is not something I'd wish on anyone. But not all of my investment value was "future", I had a bit more than $500k in Sun stock that I could sell at "any time." When I sold it when Oracle bought them it was worth about $12K.

I did not make the mistake of buying a big house on the promise that in the future I'd be able to afford it. A friend of mine bought his house and his neighbor's house to combine into a larger lot, but since the stock was going up he got jumbo loans and was selling stock periodically to make the payments. When things went south he ended up selling the neighbors house at a loss refinancing his own house at a lower rate to stay in it affordably. But I did make the mistake of not paying off my house when I could have using "bubble" stock (like that Sun stock). 2001 to probably 2006 were very wintry years.

I analyzed my behavior during the last dot com bubble and my biggest driver was tax avoidance. How stupid is that? I would say "sure this stock is 'worth' $500K but if I sell it I'm going to have to pay a huge amount of tax on it and that will net out to a smaller number." I was looking at "losing" 25% of the value of the investment by turning it into cash. Ridiculous right? Well now I think it is ridiculous.

Every 3 months I take a long look at my assets and debts and future plans and re-balance as necessary to avoid a single thing from killing me financially.

A good mental game to play to counteract the endowment effect[1] if one ever ends up holding $[some_large_number] of [tech_stock] is to ask yourself "If I had $[some_large_number] in cash, what % of it would I spend investing it in [tech_stock]?"

Very very rarely will you find yourself saying 100%. Act accordingly.

1. https://en.wikipedia.org/wiki/Endowment_effect

Bird in the hand is worth two in the bush.

I know that in the fog of war, it's easy to get fixated on what could be vs. what you actually have NOW.

About 3 years ago I was holding a very large amount of stock in a startup. The primary investor and ceo offered to do some of the early employees a solid by allowing the primary investor to purchase some shares directly from the employees.

I decided to sell about 10% which gave me a nice payday, but I decided to hold onto the remainder because 'it could be worth so much more.'

Needless to say I'm sitting on some stock that is virtually worthless. While the company in question is still active and doing ok, the real value has dropped, there is no IPO in sight, no secondary market sales opportunity, and the long term prognosis isn't great.

If I'd only had asked myself that question then, I would have sold at least 60% or more.

This is a fun game in many domains. I have friends in Vancouver who have benefited greatly from the housing boom there. I encourage them to answer the question, "If I had 1.5 million dollars, would I spend every penny of it on a 1000 sq/ft house in Vancouver?"

Probably not; yet, they hang on.

This is not the same - if you sell your house you have to buy a new one or rent, and unless you're willing to move, you will be paying just as exorbitantly as the person who bought from you. Most people aren't willing to uproot their entire lives just to make a buck on their inflated house price.

>Most people aren't willing to uproot their entire lives just to make a buck on their inflated house price.

What I'm suggesting is that that's the irrational part. They should be thinking about this decision as though it's an offer of a million dollars to move to Austin, TX (because it is).

Interesting! But it isn't obviously irrational to decide to turn down an offer to move for a million dollars. If your stated priorities are to accumulate as much wealth as possible, then it might be irrational to not move, but there are other sets of priorities for which that is not the case. I would definitely take a $1M offer to move to Austin right now, but I also wouldn't want to indefinitely run my life based on real estate arbitrage opportunities, and that isn't irrational, it's just prioritizing some things above wealth.

No, this is not a good comparison. The price rental calculators tend to show renting is the correct option in Vancouver.

If it's paid off, it's perhaps fine. But many people owe mortgages on those houses. They will be in for a world of hurt if house prices drop. I.e. The exact scenario we are discussing here.

Rental can be a good move, but as a rational decision it should include the possibility of future price increases. Buying does this, you have covered yourself against all future increases, and accepted the risk of all future decreases. That is smart if you are committed to a location for non rational reasons like your kids are happy at school or you like it.

Agree that holding mortgages that expose you to negative equity risk is a big gamble. Like stocks (real stocks, not options or non-listed equity) it's actually a good gamble if you will be able to cover a 5 year price dip. If you are likely to have to do a distressed sale at a stress point you are setting up a big loss - smart to take the risk if you are in your early 20's (the upside is great, you'll be ok if you bust) but dumb if you are >45.

In California there is also the reset in your tax base. So if you sell your house and buy a new one[1] it resets your tax base to the new price. Now renting out your house and buying a new one is a different strategy entirely.

[1] Yes some counties will allow you to "keep" your prop 13 tax rate one time.

True but you lose your Sec 121 exclusion for the years you rent it out.

It's interesting to use this reasoning in the context of tax-avoidance that the parent mentioned. Would you rather have $[some_large_number] of cash, or $[some_large_number + some_large_numer*(tax rate)] in [tech stock]?

Indeed. I don't think that the question I posed is the only question worth considering. Taxes matter and should be paid attention to.

Really, stepping up to an even higher level of abstraction I think the most important advice is to pay attention and think about your options. I think that far to many people fall prey to inaction and sticking with the status quo simply because it is easier.


It's far from obvious whether it's better to be 25% poorer with diversification.

But you're not 25% poorer, because your basis is now stepped up. In order to access the value of your current shares, you're going to pay the taxes. You either have $100 on paper and owe $25 on it, or you have $75 on paper and owe $0 tax on it.

Unless you think the tax rate is going to be lower in the future, once you've hit the long-term capital gains threshold, I don't see a reason to believe that paying taxes now and switching investments is worse than holding investments and paying all the taxes later.

The longer you can put off paying taxes the longer you can keep that portion of the money and earn a return on it.

Yes and no. If you hold a stock you avoid paying taxes on it and if that exact stock goes up, you "win" because you get more for it later. However there is no way to get a "return" on the capital that is tied up in the stock in some other way without some shenanigans. One dubious way was taking a loan out at the full value of the stock (stock is collateral) and then using the proceeds from the loan to invest in other funds. Back when day trading was "the thing to do" I met a guy who was full of these schemes and like the mortgage crisis later, when the crash came I'm not sure how they unwound, even if they did.

There's also an annual allowance (in the UK anyway), so you can sell enough to make 11k (approx.) profit a year before capital gains tax kicks in.

I think this is actually a very real problem. What would happen if I could sell one investment and immediately buy another investment vehicle and not have to pay taxes till I transform it to something that's obviously not an investment. If done right this should just make the market more efficient because it prevents lock in.

This is possible in some circumstances with real estate - it's called a 1031 exchange, and you can sell one piece/set of real property, roll the profits directly into purchasing another piece/set of real property, and not owe capital gains taxes on the profits from the first sale, although they will be owed if you eventually sell the second set of properties for cash.

In California, and across some counties, you can also move your lower property tax assessment thanks to prop 60/90[1]

[1] http://www.boe.ca.gov/proptaxes/faqs/propositions60_90.htm#1

Sorry for being pedantic, but wouldn't that be $[some_large_number + some_large_numer*(1 - tax rate)]? :)

This is the most succinct phrasing of the best advice on "How much to value stock [options]" that I've ever read. Thank you.

... since I don't poop where I eat, that percentage is always 0 for me.

I don't think I'm cut out for the startup world.

* I was looking at "losing" 25% of the value of the investment by turning it into cash. Ridiculous right? Well now I think it is ridiculous.*

Reminds me of a stock options seminar I went to, presented by an actual Fidelity options trader. The question came up along the lines of "so something something, what would the tax implications be?" His answer was something that I remember to this day, and remind myself when I'm worried about "something something capital gains": "I'm the worst person in the world to ask about investment taxes. If I'm getting taxed, then I'm making money, and that's as much thought as I give it."

I couldn't even tell you the capital gains rates at this moment. If I need to get out of a position, I get out. And to quote the above professional options trader, if I take a tax hit then I made money. If I try to avoid the tax hit by holding on for a few more months to avoid short term capital gains, I might very well lose money in the interim. So I just don't pay any attention anymore and settle up with the government come April.

Tax is unavoidable, but the difference in rates is big enough to be worth some risk, I think. A 10% drop in price is no worse than paying short term instead of long term rates.

but the difference in rates is big enough to be worth some risk

It is, and I won't even try and argue against that. However, short term capital gains are taxed at the same rate as my ordinary income. In the worst case, when I make money my tax situation is no worse than if I made the money working. That's good enough for me to just not spend the CPU cycles. Yeah, yeah, in some situations I'm leaving money on the table. I don't care because I'd rather spend the limited cycles I have for investing in finding the next good pick, not tax avoidance. At the very best, I can save 28% on taxes. Spending my time finding good companies, however, can do much better than that (see: TSLA, AAPL in the 2000s, et. al.). I'm also lazy, and find tax stuff boring in comparison to evaluating whether now is a good time to get into Lending Club.

Another way to look at it is with an eye toward always preserving capital. IOW, if I'm getting taxed I'm making money (and therefore not losing it). However, I could screw around with some tax avoidance scheme and end up losing money. I'd rather break even or slightly below than lose money; live to trade another day. So most of the time I set an 8% trailing stop and call it a day, let the machines worry about it.

This isn't investment advice, and even if it were there are a lot of unspoken assumptions that I haven't outlined. It's probably not even the smartest way to maximize gains. But for me, personally, it's the right combination of not overthinking it, not spending time obsessing over my portfolio, and still making positive returns. And last time I looked it up, I've had two negative years in the last sixteen. So it works for me (though at my age I need to start looking less at the TSLA's and more at those sexy, sexy bonds).

> If I'm getting taxed, then I'm making money, and that's as much thought as I give it."

This is true, but if you are making money and getting tax, but if you are also losing money and not reducing taxes (because you are trading a lot and getting gains taxed some years but not saving on taxes in down years), you will hurt yourself.

You only make money after a sale, up to that point your still gambling. AKA a big stack of chips is not the same thing as a big wad of cash you have to actually leave the casino without blowing it.

> You only make money after a sale, up to that point your still gambling. AKA a big stack of chips is not the same thing as a big wad of cash you have to actually leave the casino without blowing it.

Yes, but I want to sell off to diversify the kinds of chips I'm holding. At the moment, the tech stocks I'm holding on to as a result of work are doing quite well, but I'd like to insulate myself from risk anyways.

I thought all options transactions got short-term capital gains treatment.

(Most of them are naturally short-term, but even LEAPS I thought were taxed as STCG.)

No, LEAPS are taxed at long-term rates (assuming of course a year and a day duration or greater).

> I would say "sure this stock is 'worth' $500K but if I sell it I'm going to have to pay a huge amount of tax on it and that will net out to a smaller number." I was looking at "losing" 25% of the value of the investment by turning it into cash. Ridiculous right? Well now I think it is ridiculous.

Not that ridiculous! Give yourself some credit. One of the reasons taxes work this way is to incentivize people to keep their money invested.

If you're holding all of your assets in a single stock solely because you don't want to take a tax hit, then yeah that's a really bad strategy.

Absolutely, when times are good, pay off your house. This may go contrary to most investing advice, but owning your home is a great safety net.

It can make good investment sense too. Remember, someone with a lot more money than you decided that they couldn't make a better return than financing your home loan. Paying off a loan is an illiquid investment, but it's the highest guaranteed return you're going to find. And so what if you lose the tax deduction for interest? You'd pay taxes on any alternative investment anyway, so it's a wash.

Right. I run into a lot of people who will argue passionately about how stupid it is to pay down your low interest mortgage early given alternative investments.

At the same time, many of them will not agree that taking out a HELOC so you can play the stock market is a good idea.

The two situations aren't really equivalent given liquidity, etc. But at the margins they're pretty much the same thing.

> someone with a lot more money than you decided that they couldn't make a better return than financing your home loan

I'm not sure this is how fractional reserve banking works. Banks only supply a fraction of depositors money against a mortgage with the majority supplied by the fed. They basically make their money by investing other peoples money (including fed "imaginary" money) and by keeping a relatively low default rate.

That's not how fractional reserve banking works. It works by getting money in deposits and then loaning out most of it, keeping only a fraction in case some depositor wants his money back.

The reason that that act creates money is that the money in the deposits can still be requested by depositors at any moment -- it's still fully liquid, and thus the depositors still have their money. But so does whoever borrowed money.

The effect is compounded a lot by the fact that the borrowed money will also end up in some bank account almost certainly, and be almost entirely lent out again, and so on.

Nit pick...

Banks create the money when they create the loan. Assume the simple case where the buyer of the house has an account at the same bank as the seller. The bank puts an credit on its books for the loan and a debit on its books for the sellers account.

The money in the sellers account is newly created money. They didn't have to ring up the Federal Reserve or get permission. They got the permission when they got their banking license.

Let's assume the buyer now wants to move that money to another bank. He transfers his deposit from bank A to bank B. Bank B now has excess funds on its books and deposits it at the central bank. Bank A now has a deficit and goes to the central bank for a loan. The central bank loans money on deposit from Bank B to Bank A and everything balances.

Now let's say he wants to convert it to cash. He goes to Bank B and withdraws his deposit in cash. Bank B then goes to the central bank and requests the funds. The central bank then gives a loan to the central government for the amount of cash that it needs. Then it takes that loan to the central government which issues cash in the value of the loan. Bank B then exchanges its deposit at the central bank for cash and gives it to the customer. The central bank now has a deposit from the central government in the amount of the loan from Bank A and so everything, again, balances.

The only restriction that banks have on creating money these days is the ratio of equity against the entire size of their balance sheet.

Bank A doesn't need to get a loan yet after the money is moved away to bank B, after all they kept a percentage of the original deposit, so they have sufficient reserves. Right?

Reserves are deposits with the central bank or cash sitting in the vault. Reserves are created when the central bank makes a direct loan which is typically to the central government or through the discount window (where they buy a loan at a discount from a member bank).

Reserve requirements essentially mean that each bank has to have some amount of deposits at the central bank that is proportional to the size of it's balance sheet. In theory that limits the total amount of money to a multiple of the amount of base money which is controlled by the central bank.

In practice central banks have been moving away from reserve requirements as a way to influence monetary policy and some countries have eliminated reserve requirements entirely. In the US cash and reserves doesn't pay interest and so acts as a tax on the banking system. When market rates are high like they were in the 70's and 80's this tax can be significant and at some points lead to banks leaving the Federal Reserve System all together and the creation of non-bank competitors for deposits such as money market funds.

Today most banks balance sheets are limited by regulatory capital ratios rather than reserve requirements.

A history of reserve requirements can be found here that lays it out in detail. I highly recommend it if you find yourself unable to sleep on a plane. Skip to the end if you are interest in current history:


Unfortunately there is a lot of bad information (and conspiracy theories) about fractional reserve banking on the internet which in many cases is outright wrong and in the best cases no longer relevant.

Loans may be originated by banks, but most get packaged and sold as securities. It's those securities that I'm talking about.

Makes sense if you've already got a mortgage, but house buying seems tricky to me.

With property tax and home owners association fees even with your house paid off you still basically have a permanent rent. I guess in some sense you're playing the housing market, but seems like having more options and ability to move is a pretty good deal. Renting also seems a lot cheaper (even with bay area rents).

Paying off a loan that has 6% annual interest is mathematically equivalent to investing money that has 6% guaranteed return. When you look at it that way it's a great incentive to pay off debt

Exactly, and actually if you take tax rate into account it looks even more appealing, e.g. if your marginal tax rate is 50% (as it is sometimes in Europe) you would have to earn 12% on your money before it is more beneficial than paying down your mortgage/loan. Hard to beat that Sharpe.

Risk assessment is really hard for individuals. If we did it rationally we'd never get anywhere. But I think "money in the bank" and "defense in depth" are pretty good rules of thumb. In the end your goal on any one investment is to not lose.

I don't have any vested equity yet (very early career) but have decided upfront on a strategy of "sell every share the moment you can, reinvest in diversified index funds."

Being long on your employer just seems like a really stupid idea. I don't consider myself likely to be fired for incompetence and I'm not high enough on the ladder to be fired for political reasons. If my income stream ever goes away, chances are it'll be because my employer stock is doing the same.

Word of warning, from experience: don't ever think you're too low on the ladder to avoid politics or the implications thereof. I've seen plenty of "individual contributors" and "front line managers" become collateral damage in some bullshit company politics game. The worst part is that there was nothing they could've done to avoid it, other than either climbing the ladder to engage in the game and hope for the best, or simply leaving for greener pastures before the pendulum knocked them out. Unfortunately, if you're not paying attention to the politics in the first place, there's a good chance you won't see it coming.

Otherwise, I totally agree with your statement here. Especially considering that your employer is not likely to be up-front with you when business gets bad (at least, not right away), you can wind up with the "corporate blinders" on and not notice the signs around you that your stock is about to tank. I've only worked for three different companies at this point in my career, but the quarterly "business group communications meetings" always felt much more like pep rallies than real status updates, meant primarily to boost morale rather than to inform. In this day and age, to place trust or loyalty in your employer is to misplace it, as employers are highly unlikely to place either of those things in their employees.

What I'm trying to say is: your logic here is sound, and your strategy is a good one, but be careful about ignoring corporate politics.

Selling immediately isn't necessarily the ideal plan. Often when shares vested in my career they were worth only a bit more than the "strike" price.

Often times I have "sold to cover" which is to say exercised the option, and immediately sold enough of the stock to cover the cost of exercising the option and paying the tax. At that point you have shares in your company in your brokerage account where the "basis" is the fair market price when you exercised them. A year and a day later (to convert to long term gains) I've sold half the shares.

When my RSUs at Google vested they would automatically sell some to pay my tax obligation, but I would instruct them to sell half as well. Same philosophy. Get some of the money diversified, keep a bit of skin in the game in case it had a gain.

> When my RSUs at Google vested they would automatically sell some to pay my tax obligation, but I would instruct them to sell half as well. Same philosophy. Get some of the money diversified, keep a bit of skin in the game in case it had a gain.

There is no difference (except for a few bucks in broker transaction costs) between doing this and selling ALL of your RSUs as they vest ie "auto-sale" and buying Google shares on the open market.

Although the latter emphasizes the decision you are making to concentrate on a single issue rather than diversify.

> I would say "sure this stock is 'worth' $500K but if I sell it I'm going to have to pay a huge amount of tax on

How is that possible? After 1 year, you are in Long-term capital gains territory, so selling now vs later is tax neutral (except for gains on gains, but that's rather minor unless you think you are in a growth stock)

The only reason to delay selling for tax reasons is if you also have a high income (over $300K?) that boosts your Long-term capital gains rate

With options (at least ISOs), you don't qualify for the long-term capital gains rate until you've held the shares for at least a year after exercise AND waited at least two years from the grant date to sell them.

It's possible that the second requirement is what affected ChuckMcM.

As others have mentioned, taxes are vary from jurisdiction to jurisdiction. I was fortunate (or not :-)) to have a mother in law who was both a CPA and ran a tax business. In my case I got to consult with her on a variety of "what if I did ..." scenarios. In the case of my Sun stock it was clear of the option restrictions but having been acquired (remember that $10M+ of "future" wealth?) I had a pretty incredible "income" on paper. But really it was all about restricted stock (as part of the acquisition) and 89b elections etc.

Anyway, the meta question of whether or not to pay off my house was real (my mother in law advised against, after all you get the mortgage deduction). The endowment question is also good and I find myself in the Vancouver situation in a house that I probably wouldn't spend as much as its "worth" to live in it. Future risk/reward never goes away.

> The only reason to delay selling for tax reasons

What about if you live in a state with high income tax and no capital gains relief from said rate, and you think that maybe at some point in the future you might leave that state for one with a lower income tax? For example, moving from California to anywhere else.

The higher long-term capital gains rate is a recent addition to the tax code starting in 2013.

During the dot-com bubble, long-term capital gains rates were essentially the same for most brackets (only the absolute lowest bracket had a lower rate)

I had somewhat similar feelings about the taxes (different company) (went from $7M to < $2 over the 6 month lockup period alone!)

Ended up paying a bunch of taxes i likely could have avoided and got something out of it (but it was painful) Now over 10 years on after the "corrections / bubble burst" I'm finally about back where I started ... oh well I guess. I have a house and a job and all my limbs ...

Hindsight is 20/20 and all that, but in case anyone finds himself in a similar position, there are hedging strategies that avoid the 1259 constructive sale rule. You have to take some risk but you can put a floor on it.

If you think winter might be coming and want to prepare financially, the #1 most important piece of advice is this:

Lower your expenses.

Nothing gets you into trouble more than having a high expense load. Get as close as you can to spending nothing.

The next most important piece of advice is to build up cash. 6 months of your monthly burn is cutting it way too close. You should save until you have at least two years. What's more, you should save until you can actually invest some money.

These two bits of advice go hand in hand. The lower your expenses, the easier is to save 24+ months of runway up. And the reverse is true too.

Beyond that, you can do a couple other things to prepare yourself. You could join a larger, profitable company with no history of major layoffs. (Eg Google, Facebook, many others.) Or, you could take the opportunity now to start your own company, and maybe think about what sorts of businesses could benefit from an economic downturn when you do so. Focus on getting it profitable, rather than focusing on rapacious growth. Obviously, these moves (getting a job at a stable company or stating a company and getting it profitable) are more out of your control and harder to pull off. Which is why cutting expenses and saving as much as possible are the most critical endeavors.

Great advice.

Thing is, unless you plan ahead, almost everyone cuts expenses far too little and too late.

I'd add figure out your lines of retreat. If shit happens, what goes first - cable, phone contract, nice car etc.? If shit keeps happening what's next? When?

Figure it out beforehand with family whilst calm over a nice bottle of wine. You won't be making rational decisions after the shit hits the fanm and your partner is stressing over how you're going to keep feeding the kids....

Common scenario seems to run something like this. Lose job, burn normal money for six months or a year whilst "I'm bound to get a new job this week", and only then think about significant restructuring. Fast forward another six months and only now is cable tv or mobile contract being looked at. Hmm, maybe we need a cheaper car. "Sorry guys can't afford to go out this month". And so it goes until you lose the house.

I lost touch with a great friend and his family in the dot com fun who went through something like this. He looked increasngly ill and stressed until one day their phone no longer rang. Never did find out what happened to them. Couple of other friends went through similar, though rather less dramatically.

I went from a higher rate than I dreamed possible to unemployable for six months+ literally overnight. As a contractor at the time I was poison to the permanent market. (Brilliant interview, but we think you'll get bored... etc)

>You should save until you have at least two years

It is a little late to be doing this.

I have pretty bare-bones expenses (Fine, my apartment is 40% of my income) but I would struggle to save 24-months of expenses any time soon.

Unless you are making like $250k and living on $50k, I would say it is a little late to be stocking up to survive a downturn. I could do it if given probably 5 years, but I couldn't pull that off in 1 year.

It is never too late to start stocking up.

Yes, the sooner you make the changes, the better off you will be. Just like getting healthier.

A huge part of it is mindset. If you are striving to build 24 months of savings, you'll have to think about income and expenses and figure out which ones matter, which ones can go away, and how to improve them in general. There may not be a single silver bullet but there can be a lot of little things that will help in the long run.

A lot of people pay way too much for cable, like $150/ month... Cut the wire, go OTA, if you must (free), and Netflix ($10/month)

I really wonder how many people on HN seriously pay for cable. For me and many of my friends, we just have Internet and watch whatever we want whenever we want. I wouldn't watch cable if it was free. I wouldn't watch it for an hour a night if they paid me $100 a month to do so. The idea of paying $50+++ per month for what I consider to be an absolute waste of my time is crazy to me.

you don't like sports?

MLB.TV isn't bad for baseball (might have to swing a VPN to get it to work for you, depending on if you live near your favorite team). Football is still overpriced as hell, though.

Imagine really bad shit happened, your company went bust. You had to take a 30% (or 40%) pay cut. Could you survive?

OK, now take that 30% and transfer it into a savings account before anything else. It doesn't exist. Your pay is what's left. Now budget expenses and life.

Start living when you have a little insurance. Even six months buys some peace of mind.

If you have a family you have to modify a little to ensure they can have a tolerable life meanwhile, and a little time out etc. but you get the idea.

If you keep this idea going even in good times you'll be buying rental properties with it eventually.

Yeah... like I like this idea. I just don't know how sustainable it is. I am decent with money (Almost 0 debt, almost 1 month of expenses, etc) but I don't really feel like living in self-inflicted poverty.

I have done it before and I know I can do it, but I don't see the point in inflicting abject poverty on myself just so I am vaguely protected.

I understand what you are coming from, but really isn't for me. (Maybe when my income grows / I don't live in NYC...)

If you only have one month worth of expenses saved you are terrible with money. Planning for your financial future is one of the most important things you can do.

If you're in the tech industry you can afford to save 30%+ of your income. We have a it a lot better than other sectors and make good money.

Take a small pay cut now for a large payout in the future. Don't sacrifice your future for a little fun now.

Sorry to bring the mood down, I have one moderating life experience that is relevant here.

Sometimes while you are doing this you will die.

I had two really good friends who died in their early 30's, both would have made great family men, both saved carefully, got an education at great personal cost, one served in the military, both were austere and diligent in their lives. Their parents did not seem consoled by the large cash sums that they received from these men's estates.

I think that both of them would have been well served to have lived a little more before their time was up. What's the value of amazing maths skills and financial security when you are dead?

I'm sorry for your loss. I can see how that would incorrectly skew your perspective. The chances of dying in your 30's is very low for most people. Spending your money as if that's going to happen is foolish.

In our industry you can save enough money through your 20's and 30's to retire in your 40's. It makes far more sense to do that then to plan on dying in your 30's.

You're talking about the difference between perceived poverty relative to your previous lifestyle versus actual poverty where you're living paycheck to paycheck because you didn't have a sufficiently large paycheck.

Every generation seems to have a big economic shock it has to weather through (or two or three). I think living on a percentage of your income with 6-12 months' salary in the bank is the only smart thing to do when you're able to do it.

If you're renting, in a downturn, wouldn't it be very easy to move to a cheaper apartment and reduce that expense significantly?

Definitely. The "worst case" is just walk away from my lease and move in with in-laws.

> It is a little late to be doing this.

They meant that you should have been doing that for years

I dropped mine pretty dramatically in the last year.

Quit smoking. $12/pack * pack/day = $4380/year

Eating at home every meal (save one/week). Went from $10/meal out to $3/meal in (I don't eat breakfast usually). $5000/year

No drinking on school nights ~ $4000/year

That's a lot of after tax cash.

$12/pack ?!? It's less than half that? Or where are you that the taxes are that high?

It's $20USD per pack here in Australia. It's reduce lousy tax but with the plain packaging and this price has really gotten people to quit.

Looks like it's even more than that in New York.


Vancouver. If you think that's expensive, you should see our real estate!

Pricey real estate I can wrap my head around, Bay Area here. But $12/pack? Madness.

It's about A$1 per cigarette in Australia, or about US$19 per pack of 25.

Those would be Canadian $ though, I presume.

Yes, though CAD/USD was at parity for quite a while, and the price doesn't change w the exchange rate

$8-10/pack in WA also.

> 6 months of your monthly burn is cutting it way too close. You should save until you have at least two years.

Tell that to the nearly 50% of Americans who live month to month and would not be able to produce an extra $400 in savings to cover an emergency. The average American consumer is a powerful spending workhorse that keeps our economy running, but it is dangerously close to running out of gas.


The context here is tech jobs though. I don't expect many SV employed engineers to live month to month (unless they're making really bad decisions)

>>Get as close as you can to spending nothing.

Are you suggesting farming ?

Farming on any sort of serious scale requires tons of capital.

Yes, and farming on small scale is actually more expensive then buying produce at shop. (When you include all the investment required for hobby scale gardening initiative). Speaking as a farmer and hobby gardener.

Alot of that stuff isn't required in my experience. If a piece of land can grow grass you have a good chance of succeeding with just tilling it and planting. Farmers have different requirements where they need to manage risks of crop loss and maximize yield.

> I’ve been telling my students, “Take a chance, you can get another job on Monday.”

For students, maybe, especially if they're entry level jobs. However, for anyone even mid-level, I don't think this has been good advice for several years. Perhaps in SF it's been fine, but even for many mid-level (and certainly sr folks) I know, finding another job "on monday" has not been the case. (getting an interview, especially via a recruiter, has still been relatively quick, from what I hear).

Employers have been far more picky than I think many people expect. Compounding this is that they sometimes have suboptimal folks in particular roles, and those people tend to exacerbate the problem when interviewing/finding new folks.

In any event, glad to see somewhat balanced view, vs the extremes we normally see.

The message is loud and clear for senior engineers (10+ years experience): startups don't want you. They may say they do, but they really don't. And the message from SV big tech is also clear: we don't want you unless you're in the inner club (Google, FB, Amazon, etc.)

The solution is to avoid these companies. There's a huge world outside SV. These may be known as "boring" (banks, insurance, etc.) but they will not have the stupid ageist algorithm games known as "technical programming interviews". And they respect experience. And they won't have an ageist culture, it will be ok to go home early and be with family.

If the problem is that you can't get a job if you're not in the club, why not join the club?

I used to work at Google and I did a lot of interviews. I loved when we finally got an experienced engineer in to interview. I could stop asking the toy algorithms questions and actually talk about design.

But maybe they only want to hire fresh college grads? The company is sorely lacking in experience. I wouldn't be surprised if the reason they can't find experienced engineers to interview is that everyone with experience who is qualified to work at Google either works there already or doesn't want to.

Maybe you're in that camp of not wanting to work at Google. That's fine. I enjoyed it for a while but it wasn't for me. Just having it on my resume has opened a lot of doors.

Interviewing at Google a few years ago (with some experience) was not positive - the interviewer actively avoided talking anything about design or systems, and insisted on asking me brain teasers about weighing boxes of pennies, etc. Was a stupid waste of time for me and turned me off from Google totally.

How many years ago? Google famously publicly renounced those ~5 years ago.

True, was about 5-6 years ago.

I think I'd actually prefer that...

It wasn't just the type of questions, was the whole experience - I did answer, then then interviewer insisted I could do it in one fewer step, and would not proceed or assist until I came up with a better answer. Then time was up, and he answered no questions of mine. Emailing the recruiter to ask if this was expected or if there was another role and received no replies back. Sorry, but to hell with working for Google after that...

Bear in mind at the time I had 8 years experience in non-trivial roles, including some mgmt and architecture, and they were the ones who reached out to me.

> and they were the ones who reached out to me.

I had a google recruiter call, we spoke, then set up a longer interview. I asked about pay, and was told they don't talk about it until after an interview, which meant travel and time away from current projects. It's not that I couldn't do it at all, but it meant some schedule shuffling and I wanted a ballpark - just a ballpark or ...minimum floor. She wouldn't give me any info.

I then asked another question which she didn't know the answer to ("no one's ever asked that before!") and told me she'd have an answer in a couple days. That was ... Aug 2013? I'm still waiting.

I told the story before and someone said "well, that's no way to get a job!" as I described my questioning the recruiter. "I didn't apply for a job - they called me - they can answer a couple of my questions if they want me to take time out to come visit them".

can you please share what that question was? just curious. I've read many other articles about candidates having had similar experiences. Its one of the reasons i dont like Google as a company

role was developer evangelist. she mentioned bonuses were based on performance review, and I asked what the metrics were. how did they measure the 'success' of a developer evangelist? number of presentations? blog posts? conferences? miles traveled? She didn't know, and apparently no one has ever asked that question (at least at that stage of the process) before.

that is an entirely natural thing to ask. thanks for taking time to reply. i like the way you replied with right amount of info and good clarity

Thank you :)

Interviewing at google was the absolute worst experience I've ever had over two weeks:

First interview was a cold call from a bored sounding engineer-turned-recruiter. The guy asked me some questions and some I didn't know at the time, but since my experience was pretty solid, they scheduled an interview anyway.

They forgot the first interview. No call, no email, no answer from emails, etc. It's not a first, so I took it as, "shit happens".

They forgot the second interview.

The third interview finally happened, but the engineer on the other end of the phone was ~extremely~ uninterested from the beginning of the call. How in the hell am I supposed to be excited for the interview or even working with someone like that?

To make matters worse, all three interviews required me to leave work early. Because that's obviously not suspicious. Never got a call or email or apology after that ordeal.

"Welcome to Google, we hate our lives, want to hate yours, too?".

That does sound pretty miserable. I'd be upset too.

If the problem is that you can't get a job if you're not in the club, why not join the club?

Problem is the club doesn't seem to want any new members above a certain age.

"A certain age"? I "joined" the club by getting a gig at Amazon at 46. Before that I'd never worked at any of the big tech companies. I also get interest from startups all the time, but from what I can tell they don't want employees above a certain salary, not a certain age.

I don't think it's age but attitude and skills that distinguish people who can get "in the club." If the attitude is "SHOW ME THE MONEY" when Google is well known for paying way above market rates, or if the attitude is "WHY SHOULD I KNOW THESE CS PROBLEMS!?", when it's well known that Google cares about those problems...well, then no, you can't join the club.

At this point I've interviewed at Google but turned them down when they could only offer me what sounded like a glorified accounting programming position (in the Boulder office, which doesn't have as many teams as in Mountain View). I might have fun working at Google on the right team, but I have other options (including Amazon) that also pay well and are very attractive for other reasons, so why not?

> Problem is the club doesn't seem to want any new members above a certain age.

Which is precisely the problem that was being pointed out earlier - how meta! :)

Despite my shitty experience last time, I would be willing to give Google another chance (as long as it isn't in California). They've decided to ignore me.

pm or email me if you want some help username@gmail.com

Also I have worked for Google in NYC and London so feel free to ask any questions.

Since when does Google fail to ask toy algorithms question of senior engineers?

I'm not being snarky; everything I've ever read, heard, and experienced with Google interviews is that these trivia algorithms questions compose the majority of the on-site interviews. [1] [2]

You appear to be different, but please don't claim your interviewing style as representative of even 1/4 of Google interviewers.

> [maybe] everyone with experience who is qualified to work at Google either works there already or doesn't want to.

If memorizing algorithms is a necessary condition of a senior engineer being qualified to work at Google, that is fine. But it is disingenuous to claim otherwise, since clearly many have found it is algorithm memorization that has been the gatekeeper from getting an offer at Google, not non-abstract large systems design, linux systems internals knowledge, concurrent and asynchronous programming, etc.

[1] http://www.nakov.com/blog/2007/12/27/overqualified-to-work-i... "Trust me, a 15 years old schoolboy who is a good programming contestant (e.g. some of the Bulgarian National champions) can pass these questions without having any experience in commercial software engineering. I expected more software engineering questions about software design and architecture, large-scale databases and information systems, Internet applications, information security, parallel programming, threads, synchronization, development process, software quality, testing, life-cycle, software project management, agile development, etc. but the interviewers didn’t even mention any of these topics. I applied for senior position and it was normal to expect serious software engineering and technical questions, but this didn’t happen."

[2] https://www.glassdoor.com/Interview/Google-Senior-Software-E... (the typical response is some variation of "they asked me a question that was similar to a problem in Cracking the Coding Interview while not offering a single question about my previous accomplishments or potential culture fit."

Most start ups really want people in early 20's, Unmarried without responsibilities, who have a very idealistic view of the world and are ready to fail, without any financial profit in return.

>>stupid ageist algorithm games known as "technical programming interviews"

Unless you are in "exam mode" all the time. Spending away all your life in the pursuit of the interview preparation. This kind of interview preparedness isn't possible anyway.

^yes. when an early-stage startup (seed or just hit series a) emphasizes that they are a 'family' this is not quite accurate. yes, caring and support abounds, but its not so much a family as a group of friends...and like every group of friends when you can't hang at the bar until closing a few nights a week or spend a weekend 'adventure camping' the group just stops inviting you. quickly you lose sync, don't get the in-jokes and most importantly you lose value in the eyes of the group. 'oh, she/he used to be cool, but they just don't hang anymore'.

when it comes to work this has a very destructive effect. team-building exercises that require people to choose between spending time with their families and participating are, in my opinion, at the least cruel and at the most nefariously aimed at driving a culture wedge between you and the company.

your children only grow up once. no second chances.

your elderly parents deterioration and eventual death only happens once. no second chances.

most of us will work the majority of our lives, occupying several roles at more than one company. in my mind this amounts to numerous 'chances' to do things better/differently/more carefully/more thoughtfully/ etc etc etc.

To his credit, I had a (rather eccentric) founder in NYC ask me if I planned on having kids anytime soon as the first question of his interview - after all the tech questions from people under him.

When I said yeah, and I was planning on commuting from NJ, he said "well I don't want to break up a family, so see you later" <end of interview>. I thought it was rude at the time, but here I am 3 years later and damn if he wasn't right. Dodged a bullet that only he saw was coming right at me.

I'm pretty sure that in the US that question is illegal to ask an interviewee. It might have been beneficial in your case, but is still totally illegal because it is one of the ways the sexual discrimination in hiring propagates.

> I'm pretty sure that in the US that question is illegal to ask an interviewee.

It is not. (Like most questions that people think are illegal to ask in interviews, its merely ill-advised to ask because it asks specifically about something on which it is illegal to discriminate in hiring, and asking about it in an interview is -- on its own, weak, but still -- potential evidence of its use in a hiring decision.)

(Cargo cult HR helps perpetuate the myth that these things are illegal to ask.)

Okay, it might not necessarily be illegal in the general case, but in the specific case described by the OP, asking that question, getting an answer, and then saying "See you later <eom>" makes it clear that that was discrimination in the hiring process based on family responsibilities, no?

It's not illegal but it opens many very wide doors for lawsuits.

That might be the first example I've heard of positive cargo-culting.

As a long time independent consultant looking for a regular 9 to 5 job, my recent interview experiences would be consistent with this statement. After a series of phone interviews and a 4 hour on-site, all of which yielded positive feedback, I was told the position went to someone "more passionate" about the company mission.

After reflecting a bit on what I may have done or said wrong, it hit me. This place had the typical startup perks: catered lunches, stocked kitchen (with plenty of energy drinks), and a younger demographic (I'm 40). My conclusion is that "More Passionate" is actually code for "willing to work 14 hour days."

And what if I'm past my 20's, but still unmarried with no responsibilities and I love pulling all nighters and am willing to work long hours for relatively low pay? There's no real way to tell potential employers that, is there?

That seems to be common in other high-churn areas of the industry as well, ex: GameDev.

I have faced something similar. Though I have 14 years experience with technologies that are suppose to be in demand (Ruby On Rails, NodeJS) I have had a very difficult time finding work this year. It's certainly more difficult now than in 2012 or 2013.

I had no issue interpreting the likely intended meaning of this: This person is saying they have been keeping up with new technologies the past 14 years (such as RoR, NodeJS now, but years ago Java held that spot, etc.) https://en.wikipedia.org/wiki/Principle_of_charity helps here especially these days when typing on a mobile phone can easily lead to typos and mistakes.

Neither Ruby on Rails nor NodeJS has existed for 14 years.

She was simplifying; most likely she meant:

"I have 14 years of commercial experience overall, with recent emphasis in high-demand technologies like RoR and Node.js"

yet FORTRAN and COBOL do

and so do reams of magnetic tape around the Beltway

who will maintain old code? you?

The poster specifically mentioned 14 years with these technologies. The fact that there are technologies 14+ years old is irrelevant to this point.

You can parse that statement in a more favorable way. She has spent 14 years acquiring experience with relatively new (or newly popular) technologies.

So 14 years ago, she would have worked with a technology that is now slightly more than 14 years old--I'd guess C#, which is now 16 years old. Maybe 9 years ago, she worked with Ruby on Rails, which is now 10 years old. Maybe 6 years ago, she started on Node.js, which is now 7 years old. Even now, she is likely keeping an eye on HN to see what would be most useful to learn next.

In other words, she has been continuously jogging on the technology treadmill, rather than staking out a niche to ride out until retirement.

This is likely the only way to avoid moving to progressively stodgier and less interesting companies as you age. The young and hip companies use the young and hip tech stacks. Established companies wait to see whether the new thing can cut costs or increase revenues before migrating, and part of that equation is not paying a premium for specialist developers that are currently in high demand.

Replace "with" with "including" and all the strange comments to this post evaporate. Every experienced programmer knows what is meant by this. By the way, anyone experienced picks up Node.js in a week.

It's interesting to see so many comments on an imprecise wording of a sentence.

As humans, people can parse this sentence and infer the thinking and meaning behind it.

The related part of the problem with this the difficulty in finding a position is that computers and compilers cannot infer meaning - the statement must be exact (not precise, not accurate, exact). And for a programmer, making such logical gaffes is detrimental to speed and quality of a particular piece of work.

Could be unfair in assessing one as such, but a line of reasoning here does exist that I believe to be testable and valid. And life isn't fair.

Perhaps a piece to help you in finding a position better is to form the idea first, then reword it for the right audience (for programmers, be exacting, don't leave room for interpretation).

do you think it's anything to do with the name "susan"?

I don't know why you've been grayed out.

Skills are skills. Even if you don't have the latest iPhone or Android flavor TangoUniformVoo 8.9.

Considering that i'm a bit rusty (no allusion intended), if i'm certified in Sun's Java 1.5/5.0, can i still program in OracleJava, and what about Google'sJava? ....Though maybe it takes a little bit of elbow grease and sharp elbows to push the script-kiddies currently in HRManagement aside.

>> Though I have 14 years experience with technologies that are suppose to be in demand (Ruby On Rails, NodeJS)

> I don't know why you've been grayed out.

Because we oldtimers know that ruby on rails and especially node.js hasn't existed for 14years. Ruby on rails had it's first stable release about 11 years ago.

Actually used to be a recruiter joke/meme : young rails wizard wanted, minimum 10 years experience (back before 2005 :-)

That said, I didn't downvote, but I suspect this is the reason.

Edit: removed this, I might have misread the post as pointed out by others -> (not being careful with facts, massive hyperbole)

Joke or mistake?


In that link we can read:

_I have done one major project with Node._

She was talking about details of NodeJS, in particular "all the latest packages".

The lack of charitable interpretation in this thread is embarrassing.

interesting that that's interesting enough for you to research and note.

(please re-read the original article.)

It's in the first page of the user's comment history, not that hard to find on a quick skim.

> stupid ageist algorithm games known as "technical programming interviews"

I think there are problems with the current model, but is ageism really one of them?

To a large degree yeah - performance in "stupid algorithm games" is basically perfectly inversely correlated with "years since undergrad CS courses".

It's more of "years since last studied algorithms". University algorithms classes are useless for these types of interviews for the most part when 90% of the focus is on the proofs.

Most people I know spent time studying by themselves outside of class/class material.

I'll add another voice to the job market for experienced developers and managers. It's terrible. I have an advanced CS degree, in-demand programming skills and leadership experience. I've hunted for full-time, part-time, and contracting work for a couple of months.

Interviews tend to go the following way: pass the initial interview, pass the programming test, pass the technical interview and never hear back (even after a couple of following up emails and/or phone calls). This grind really wears down one's self-confidence and outlook. It's been a depressing summer.

I have over 12 months of living expenses in my savings account and a very supportive wife, so I'm going to do a startup and see how far I can take it. It feels like a better use of my time and promises some new learning experiences compared to more interviewing.

> I have over 12 months of living expenses in my savings account and a very supportive wive

Good on you. The family support is key during this - have been unemployed and non-productive, and family support helps tremendously to get through that period.

What sort of skills do you have, and what are you looking for (email me if you'd like)

It definitely can get very wearing on your self-confidence. Good luck to you!

I suggest reaching out and asking those companies why they didn't hire you. The recruiters might tell you something. Are you asking too much salary, or too little? There might be something setting you off. In seattle, there is still huge demand for devs.

If you're interested in contracting work, I highly recommend checking out Gigster. It's extremely meritocratic—if you're good, you can easily make $200k+ a year, and there's no in-person interview hoop to jump through.

Wow, really sorry to hear about the struggle. And I hear you on this process undermining confidence.

I think going for a startup is a great idea, and it's awesome you have the family support to do this. Any ideas on what the startup will be yet? Lots of friendly people here who are willing to help in whatever ways they can!

I went through a very similar period a couple of years ago. Would be glad to trade war stories (or just talk freebsd :) -- find my email in my profile if you like. Good luck, either way!

so it's not just me. When I was transitioning out of the miltary this time last year, getting a new gig was difficult but manageable. I have been at it full-time (since I tabled my start-up after 6 months of work) and you described my current experience.

You have to come in guns hot.

I am in exactly the same boat. Advanced CS degree with high-demand skill set and live in CA but struggling to find job for last 2 months.

Good luck! Truly. I think if you can't find a place that wants you, then you make your own. Or at least try. Something will work out for you, I'm sure of it. Key is to not quit, to not stop, and to always look for another way. :)

It's a good idea to bias entreprenurial in tech, IMHO. It's hard but it escapes the crush of the job search. If you can find a bit of investment that's even better.

Wow! Thank you all for the positive comments and encouragement. I think it's helpful to us all to share these experiences to show that we aren't seeing these trends in isolation.

> in-demand programming skills

No offense, but hasn't your experience shown that, regardless of how strong your skills are, they are clearly not in demand?

Maybe, but I doubt it. I've had no problem getting interviews and navigating them. But I don't really know because most companies don't respond to follow-ups asking for feedback on why I didn't get the job and what I could do better.

Yea. I think a lot of people might think the hiring market is healthy and that there are jobs everywhere purely based on the volume of recruiter spam in their inbox. In reality, tons of companies are INTERVIEWING but nobody seems to be HIRING.

I've got almost 2 decades of experience as a programmer, project manager and product manager, and I still estimate that, given the job market these days, it would take 1-6 months to line up another job if I started today. I've not seen an environment where you could "get another job on Monday" since 1999.

You're too old. This gets back to the basic 'ageism' issue in tech, which is real and alive for many, and discounted as non-existent by others (usually much younger folks!)

Most of the 'older' tech folks I know take a while to get new jobs - took a friend of mine more than 9 months. This has nothing to do with actual skills/abilities, it's (at best, being charitable here) perception of skills/abilities.

Yea, I'm sure ageism is part of it. But something definitely seems different nowadays (from both the interviewer and interviewee side of the desk), compared to 1999 or even 2005-2006. The focus these days seems to be "Find out ways to disqualify the candidate" and "Haze the chump", rather than "Find a good reason to hire him/her and then do it! We have a product to make!"

> But something definitely seems different nowadays (from both the interviewer and interviewee side of the desk), compared to 1999 or even 2005-2006.

You're 17 years older :)

Yes, it is different - the economy is in the dumpster.

Official reports herald 1-2% GDP growth rate, but if you realize the inflation is more like 5-6% rather than the official 2% , the economy has, in reality been contracting.

These growth rates touted in newspapers etc. are always adjusted for inflation.

Source: I worked on these forecasts for 2 years.

That was exactly my point - they are adjusted for 2% inflation, not the actual 5% inflation.

This is not discounted as non-existent by anyone. Ageism is a very clear and apparent problem to anyone. As a millennial, i know a lot of people who are clearly "ageists" but almost all of them have been gen x and my millennial peers are very aware of these things. I'm not saying millenials aren't to blame as well, but anecdotally the problem seems to stem from the generation above me and the generation below those who are feeling the ageism

Any time ageism comes up on HN, someone trots out "the people who are complaining about being victims of ageism just haven't been keeping their skills up to date; keep learning new things and you will be fine." It generally goes unchallenged. I would consider that to be discounting ageism as nonexistent.

I don't know if I have ever experienced actual ageism. Here's what I've found, though:

- If you want somebody who will work 14-hour days, well, that eliminates most people over 40.

- If you want to pay appropriate to someone who's 25, well, that eliminates most people over 40.

- If your company is a pit, if your management is insane, if your coworkers are psychopaths, well, most people over 40 have seem that enough times to not go there.

I've seen companies advertising for "senior software engineer". They want 5-7 years of experience. I've got 30. They don't want to pay for 30. Is that ageism? Or am I just too expensive? Or does my experience exceed the hiring manager's ability to correctly value?

I'm not saying that ageism doesn't exist. But I am saying that there are some reasons other than ageism that older software engineers find it harder to get hired.

Tech is, ultimately, an up or out field.

The marginal return to experience is minimal after a decade or so, particularly when it comes to the average software job. If you have decades of experience, you need to be in a higher leverage position (either consulting or management) to get appropriate pay for the position.

This doesn't make tech ageist. My local grocery store also doesn't pay the senior cashiers any more than the high school ones.

I disagree, at least for some sub-fields. In embedded systems, 20 years of experience is more valuable than 5 years (and has pay to reflect that).

In web programming? Maybe not so much...

It sounds like we actually agree. Most of the accusations of ageism seem to be for fields where 20 years of experience is not so valuable.

That makes sense.

If all you need is someone with a few years' experience, the younger candidates are probably going to be willing to work longer hours, for less money, than the older candidates.

In other words, why pay a 20+ year veteran a lot of money to do Rails programming when a recent college grad knows enough to do a decent job, and can be paid an entry-level salary? Not every engineer on a team needs to be senior.

I suspect this is also good career advice: if you don't want to compete with entry-level programmers for jobs, specialize in an area where more experience makes you a more desirable job candidate.

> Most of the accusations of ageism seem to be for fields where 20 years of experience is not so valuable.

I don't have enough data/experience to confirm that, but it seems plausible.

Can you articulate why experience is valuable in embedded systems and why it is not valuable in web applications?

Mind that the parent poster didn't claim that experience was not valuable in web applications; just that there were diminished returns.

Embedded systems programming is far more architecture and device specific than web applications are, thankfully. Embedded systems programming requires a much large body of knowledge: chipsets and their features, device-specific options, the behavior of the RTOS (if there is one), esoteric configurations in the cross-compiler or build tool, ability to interactively debug (read the instruction set, use the interface (JTAG, etc), cope with interrupts), ability to thrive with extreme resource limits, and write comprehensive tests with a nearly-exhaustive test plan; since a final release can't be rolled back once customers have purchased it.

This isn't because of some inherent superiority or prestige of embedded systems programming (salaries are lower across the board compared to backend applications programmers), it's just plain more complicated.

A 20-year senior backend programmer should really have progressed to an architect or principal engineer role at that point in her career. An embedded systems developer with 20 years of experience is more typical because of its inherent complexity.


You don't think having been programming for the web since the web came into existence is not valuable experience to being a web programmer?

That is absurd. That kind of bullshit talk is why ageism exists and what perpetuates it.

He didn't say it wasn't valuable. He said it might not be more valuable than 5 years' experience, presumably because technologies change so quickly in web programming. I don't agree with that, but he certainly wasn't being ageist.

Assuming that anyone over a certain age is going to require short hours, high pay, etc. IS ageist.

One or two gen-xers or millennials saying such things per ageism comment on HN might count as discounting ageism as nonexistent but only by those people specifically.

People know it's a problem. Whether or not they actually do anything about it is a different story. Like any "ism."

lets start by removing the labels of gen x and millennial. It's degrading. I personally try to not take age (or gender, race, clothing choice(please can we stop with wearing suits and ties to interviews, it's dumb), or anything other than skills and culture fit) into account when interviewing people. But I can say that looking out over the people at the company I am at, it's mostly young people. Is that ageism? probably some but also, guess who costs more? old people. That's why older folks have a harder time getting hired. I also suspect that due to the glut of young kids coming into the market they will feel similar pains at trying to get hired just due to sheer numbers, and of course jerks who don't want those kids on their lawn.

It is also easy to forget that more and more people are becoming programmers each year. The necessary result of this is that when you look at the average tech company, there will be fewer older programmers.

"Uncle" Bob Martin once gave a talk where he asked for a show of hands of "How many of you have been programming for 5 years? 10 years? 15? 20?". The results in his audience roughly correlated to his thesis, that the number of programmers has roughly doubled every 5 years since programming was a thing.

Are there fewer older programmers at a given company because of ageism? I'm sure that's part of it. But don't forget that there are far, far fewer programmers with 20 years of experience than with 5 years of experience.

And if you got the choice of hiring someone with 5 year experience or 20, which would you choose?

It would depend on the kind of experience and the quality of insight. Time served doesn't correlate to quality.

Programming is actually a very permissive industry. There are corporate environments in which you can be barely competent and still keep your job - if not gain promotions.

Depends on whether they cost the same. If the experience costs more, does it bring enough value to the position I'm hiring for to be worth the cost?

That's the key to getting a job with 20 years of experience. You need to be able to convince the hiring manager that you're worth the extra money in that job. (And then the hiring manager needs people above him that will let him spend the extra money.)

There's nothing stopping you from not wearing a suit to an interview. I never have, and I don't believe it's hurt me one iota.

The only candidates I see regularly wearing suits to interview are executives and college junior/seniors. I'm hiring you to code, not model. I couldn't care less what you're wearing as long as it's clean and reasonably respectable.

>who costs more? old people

That's an ageist statement.

> This is not discounted as non-existent by anyone

Based on conversations in some of our tech groups, yes, it is seen as non-existent by some.

If people are ageist against millenials, who's hiring all the 25 year olds I work with?

If you're suggesting based on your workplace that young people are more likely to find jobs overall, you are incorrect.

"On average between 1989 and 2007, the unemployment rate of workers under age 25 was 2.2 times as high as the overall unemployment rate. [...] In March 2015, the overall unemployment rate was 5.5 percent, and the unemployment rate of workers under age 25, at 12.3 percent, was 2.2 times as high."


My comment and the article are specific to tech; your response is not.

He didn't say anyone is ageist against millenials. He just said millenials are not the ones who are ageist. I think this is probably still not true, but it's the claim.

At my place, we have plenty of older folks(40-50s), but a lot of the older guys suffer from either NIH syndrome or do-not-want-to-innovate syndrome or barely surviving-syndrome. Some of them are in management and also just don't get it. This definitely biases myself against older folks if I ever have to interview, but usually interviewees can barely pass a phone screen anyway regardless of age.

It's frightening since I'd imagine that these things I implement now may be irrelevant 10-20 years from now and would imagine myself butting heads with the next gen of kids as an older guy.

I guess we will have to see if ageism becomes irrelevant as time goes on and the current generation of 20s kids that become the hiring managers 20 years from now lose their bias as they age. I'm hopeful as tech has had a lot of growth and the current 20-30s technologists value the older folks.

Well, at my place I'm the "older" guy wanting to innovate :) I don't think either NIH or not wanting to innovate is an age thing. It's a mindset. Plenty of young people have that as well. Plenty of older innovators.

There are a couple of older innovators in management positions as well. The guys who really want to innovate and make a difference have gone to other places unfortunately. I guess we are merely left with older guys who are comfortable.

Being in "regulated" finance makes for a lot of guys who have golden handcuffs. Great salary and benefits and no strong desire to ruffle the bureaucratic obligations placed on them. A very common theme is, "Hey can you work on this X feature? Would be really useful." "That sounds like a great idea! But sorry, I can't unless there is a billing code dictated by the business for that idea"

>>In reality, tons of companies are INTERVIEWING but nobody seems to be HIRING.

Most companies tend to judge a programmer's ability by checking if they can solve the 4 latest questions on their favorite programming algo puzzle site within an hour.

No amount of work prepares you for this.

I had a first interview with a company where an engineer walked into the room with an eight page C++ exam. No interview. No meet-and-greet-tell-me-about-yourself. Just write, using pen and paper, several complete C++ programs for really hard academic-style problems (combinatorial optimization, dynamic programming, machine learning). Oh, and you had 1 hour. It wasn't an interview as much as a graduate level final exam.

What if you practiced these problems?

GP may be able to do that and get the job, but then he or she would be working with others who've done that, and they may be good rapid puzzle solvers, but not good engineers. That's the problem with that interview approach, it tests only one particular skill (and even that with a high degree of variance).

I wonder. I've done a bunch of interviews and will tailor basic questions based on the resume. If they claim to understand networking, I'll ask them a basic "what is ping?" then progress to something like "what does arp do?" Then maybe a tricky, "whats the difference between a timeout and route unavailable error when pinging a host" And hit other topics. I wonder if this is too quizzy?

If it's about Bash, then basic questions about variables, exit statuses and such are asked. Surprisingly, so many people's resume accomplishments don't line up with what I'd imagine would be the type of knowledge they should/would carry based on the accomplishment.

If the candidate is out of college, then I am a bit more forgiving since I wouldn't expect them to know the intricacies of certain software stacks, but for someone working with something for 2-3 years can't really explain what they put on their resume, it's a big red flag and plays a very large part in disqualifying the person based on their technical merit alone even without getting to the "does this person play well with others" aspect of interviewing.

Your approach is pretty much standard practice in the engineering world. People in this industry like to claim that answers to those kind of questions can be faked, but you can't fake depth. At some point, if you know what you are doing[1], you will make them look like an idiot if they have been lying.

[1] If you don't know what you are doing, you have no business giving an interview. That's another big problem this industry has.

I'm glad to know I'm not the only one that does this. I'd say my results echo yours. I had one candidate with a resume that bragged about years of shell scripting experience. When I asked the trivial question of "What is your favorite shell?" he gave a panicked-deer-in-the-headlights look and muttered something about Ubuntu.

Phew. Glad to know that I'm not the only one dealing with bullshitters on resumes.

I noticed that the recruiting firm that got me my current job is that the candidates that they send aren't that great. I only met this firm because a friend passed the gig on to me. They just send anyone and hope that someone sticks. But once they find someone that sticks and is doing well, they keep on coming back once the headhunting contract limits are off.

This isn't relevant to the claim that "No amount of work prepares you for this". You can indeed prepare for "puzzle" interviews. Whether this is good interviewing culture is an entirely different question.

>>You can indeed prepare for "puzzle" interviews.

The term 'Preparation' is a misnomer here.

That process literally involves living your life on sites like TopCoder, HackerRank etc. You will likely be spending any time you can spare on such sites, to 'prepare'.

You can be the most productive person in your current job. That doesn't prepare you for these interviews.

> That process literally involves living your life on sites like TopCoder, HackerRank etc. You will likely be spending any time you can spare on such sites, to 'prepare'.

In the same way that keeping up with current events means living your life on sites like CNN, Reuters, NPR? The same way learning a language means staring at DuoLingo all day?

Most people don't require 100% time allocation to learn something.

At the same time, you can be amazing at your job without being amazing at toy-problem-brain-teaser questions.

I think there's a big, meaningful difference between "no amount of work prepares you for this" and "no amount of [anything] prepares you for this."

With very few exceptions, a job where you're doing useful work, is not going to prepare you for those sorts of data structures/algorithms memorization questions. Libraries exist, you should (generally) be using them, not rewriting them every day. And yet I've been interviewed several times for roles where my actual work has turned out nothing like those interview questions. It's merely a way of trying to check "do they have a good enough memory and grasp of the basic concepts to work things out" as a (lazy, IMO) substitute for trying to see if they have relevant, immediately-useful skills that will complement your team. The less training and onboarding you want to have to burden yourself with, the less you should be asking those questions.

Fortunately, on my current team, I had the flexibility to change up our interviewing approach. And then other teams made comments along the lines of "how did you hire such good senior people who grasped our problem space so quickly?!" :)

> I think there's a big, meaningful difference between "no amount of work prepares you for this" and "no amount of [anything] prepares you for this."

Something you spend time on to do better in interviews is work as far as I'm concerned. Brushing up on algorithms is work in this context. So is doing programming puzzles if you expect to see those.

> It's merely a way of trying to check "do they have a good enough memory and grasp of the basic concepts to work things out"

It's generally not about memory. That's a factor but not the intent. Programming puzzles are about finding out if the candidate has a sufficient grasp of technical basics (i.e. if you don't know what a hash table is, or if you don't know Big-O notation, that's a big concern), and yes, whether they can work through a problem. If you can't work through a problem, that's also a big concern. It could mean you just don't interview well, and that's a problem I don't know how to solve. It could also mean that you just aren't able to think through complex issues.

Toy problems are not completely representative of real work, but I find it odd when people claim they don't do anything like this in their work at all. I use Big-O to discuss work and give code reviews with some regularity. I work on problems that require juggling some moderately complex state to solve correctly, that require good choice of algorithm and data structure to solve efficiently. That's definitely not most of my work, but it's a part.

I try really hard to ask questions that someone with good grasp of fundamentals can solve, though. I stay away from questions that are dependent on a clever trick (find a loop in a linked list with two pointers) or esoteric/trendy knowledge (use circular hashing and a bloom filter!).

On the other hand, "brain teaser" puzzles seem mostly to be pointless, but I've not personally been asked one of those in a real interview and I don't know anyone who uses those.

> as a (lazy, IMO) substitute for trying to see if they have relevant, immediately-useful skills that will complement your team.

I don't generally care if people I'm hiring have immediately-useful skills beyond the fundamentals. I don't care if they're well-versed in our stack or languages or whatever. It's a bonus if they are, but I care far more that we hire smart people who can learn.

A lot of it is memory. If you have recent memory of writing, say, a bunch of tree traversal implementations, you're going to solve those problems a lot faster than someone without that recent practice. And if you're talking a 45-min or 1-hr one-or-two-question phone screen, companies are putting a lot of value on that quickness.

I haven't seen many interviewers (as candidate or as a fellow interviewer) who truly value "talking knowledgeably about Big O notation" or "knowing what a hash table is" anything near as much as "wrote a whiteboard implementation of topological sort quickly enough." It's the latter part that I object to.

The areas where I've found looking for immediately-useful skills helpful are (a) to ship specific projects in new areas where I'm not an expert fast and (b) to verify that someone has the patience/diligence to go deep in at least one area. Friend of mine is at a place that seems to need this desperately: about 15-25 "smart people who can learn" mostly straight out of school, but a culture that's mostly the-blind-leading-the-blind and rediscovering known solutions (or worse, rediscovering practices with known issues). He's currently trying to sell them on the value of having automated regression testing, but that's not the type of skill learning they were selected for.

> A lot of it is memory. If you have recent memory of writing, say, a bunch of tree traversal implementations, you're going to solve those problems a lot faster than someone without that recent practice.

It is a factor but not the purpose. Yes, if you don't remember how to do something, you'll have a hard time doing it unless you can derive it from first principles. There is literally nothing you could ask in an interview that would not involve memory, though. "How would you reverse a linked list in C"? Definitely some memory there. "How would you implement a hash table?" Also requires memory. "What did you work on at your old job?" Again, memory.

> And if you're talking a 45-min or 1-hr one-or-two-question phone screen, companies are putting a lot of value on that quickness.

Eh, maybe. I think studying up on interview problems is a good idea in general, because it gets you practice thinking through problems and recognizing similar situations. However, I don't consider it a positive to see someone burn through the "right" solution with no apparent thought. If you've seen the problem and don't say so, I have to lean toward no-hire, because pure rote memory is not interesting. If you have clearly done the problem recently but deny it when asked, I have to question your ethics, too. You might just be a genius, but them I expect you to seem like a genius when we discuss technical matters and not just when solving interview questions.

> I haven't seen many interviewers (as candidate or as a fellow interviewer) who truly value "talking knowledgeably about Big O notation" or "knowing what a hash table is" anything near as much as "wrote a whiteboard implementation of topological sort quickly enough." It's the latter part that I object to.

I don't ask questions like that and most of the my colleagues don't either. I do ask technically difficult questions and expect code, but I don't expect perfect code. I expect candidates to work through a reasonable solution out loud and write at least part of it in code that could work with a little polish. If you write terrible code and leave off-by-one errors everywhere and can't recognize them when prompted, it's probably a no hire.

> Friend of mine is at a place that seems to need this desperately: about 15-25 "smart people who can learn" mostly straight out of school, but a culture that's mostly the-blind-leading-the-blind and rediscovering known solutions

Your friend works somewhere with poor staffing practices, then. If you don't have some senior people promoting proper dev culture and practices, it's going to be a mess of poor engineering and reinventing the wheel.

It seems like we're mostly on the same page, just approaching it from different directions. Maybe I've just gotten unlucky in my interview experiences at startups/establish Bay Area "coding question"-focused shops. :\

Seems like we're not that far apart, at least.

I won't lie. Interviewing is tough. I've been involved with some bad interviews from both sides. I wish there was a better way, but I'm not convinced that any of the alternatives typically proposed are actually better.

I gave some interviews when I was at Yahoo that I recognize in retrospect were pretty terrible. Questions with clever/trick answers, trendy topics, etc. The only thing I never did was the pure brain teasers (a fox, chicken, and farmer need to cross a river...). I try to do better now. :\

True. I did change the topic and offer my opinion.

You can't exactly practice these problems. There is generally some trick involved somewhere which the interviewer expects you to demonstrate.

Some tricky way of traversing a tree, or expecting you to know the complexity of every sorting algorithm that exists out there. There is so much of material out there, you'd pretty much be on top of it all the time to 'not forget' stuff with the passage of time.

The market in Ireland seems amazing. I'm a bit older than you (25+ years of experience) and last year I went to Dublin for an interview, didn't like the job very much, went to about six more interviews, got two very good offers, chose one. This was all in a timespan of about a week.

Then again, it might be because I'm mainly a contractor; I didn't try to get employed full-time.

> it might be because I'm mainly a contractor; I didn't try to get employed full-time.

I bet that's most of it. Can't speak for Ireland, but almost every country has a lot of extra burdens and regulations that come with "employees" vs "contractors".

This is why Comcast hires all developers as independent contractors.

My team, and most of the teams in my division, are full-time Comcast employees. Our PM and QA orgs, however, is full of contractors.

So, um, where does one find contracting work in the UK? As a programmer, obviously.

It's the first time in five years I'm withouth permanent work. I think I might give it a try to do a bit of freelancing or contracting for a change.

Where does one even get started though?

I usually upload my CV to monster.com, dice.com, indeed.com and I start getting emails from recruiters. You can also search for recruiting agencies and contact them directly. Don't ignore Twitter and LinkedIn, some of the people seeing your messages might know someone who knows someone.

Don't stop at the first "no", send a few dozen applications and see what answers you get.

This is pretty much the easiest thing you can do; I'm happy with the results because my income expectations are lower (being from Eastern Europe) than those of a native British. Meet-ups, investigating companies' needs and everything else that @patio11 describes are needed for much better results.

Thanks- sounds like what I when I'm looking for a permanent role, so I got no excuses not to know the drill. :)

Two of those pimps you can upload your CV to are: http://www.hays.co.uk/ http://www.computerfutures.com/en

Thank you, I'll have a look.

I also have 2 decades of exp and I'm over 50. I had no problem recently switching jobs but I also had good experience, and I'm a dev and have recent dev experience. I wonder if part of your problem is not being a dev but being pm of one type or another. PMs can have a rep as not being so technical. It might be painful but try to contact the people that didn't hire you and see what they can say.

You would be extremely lucky to have someone talk to you about why they didn't hire. They have no incentive to talk to you and plenty of disincentives, for example just not having the time. It might be HR policy to avoid contact for fear of leaking info that could lead to a lawsuit.

Why would you bother spending engineer time on interviews if you aren't hiring?

There are companies that think they are hiring, but aren't, because their interview process is a trainwreck that passes on great candidates, aims only at former employees at big tech companies, and don't offer those people competitive salaries, so their accept rates are under 30%.

There's plenty of startups up there working on trying to improve the state of hiring, but little has changed so far.

Interview processes aren't about ensuring 100% of the good candidates get hired, but rather about trying to ensure that the candidate finally selected is good.

Being several times on the hiring end of that conversation, there's a class of great people that are very hard to identify over an interview. It feels quite bad to suggest a no-go in those cases, but living through such choices, sometimes for years, increases the fear of mishaps.

These days I mainly look at track record. Involvement in projects, conversations, issues filed, quick hacks, etc. Often language or tech doesn't even matter, as long as there's flexibility and an ability to talk over problems.

If these companies aren't really hiring because they aren't offering competitive salaries, that means that someone else is hiring and offering competitive salaries.

> There's plenty of startups up there working on trying to improve the state of hiring, but little has changed so far.

Probably not much will change, because it's an internal culture thing, not an external "wish we had this tool" sort of thing. Yes, some tools/services can reduce friction to make it easier, but if someone still has a policy which is counterproductive, and will not remove the policy, you won't get the necessary change.

>Probably not much will change, because it's an internal culture thing

Is it even internal? This just occurred to me so it's not even well-formed in my head, but I would posit that the policy is (or appears to be) shared even if it's subconscious. Systematic bias is a thing and nobody thinks they're the bad guy, but emergent behavior can be mistakenly attributed to "internal culture" while nothing gets better. Blinders.

There are a lot of commonalities in the anecdotes in threads on this topic, and if it was code being analyzed by a programmer they might say these shared behaviors could be pull-up refactored (or extract superclass, or...) from a scattershot of presumed-local traits ("policy") into characteristics of the entire system.

My view is that companies are hiring, but are looking for nearly-perfect candidates. I wonder what part recent changes to the field have to do with this, i.e. higher salaries for engineers the past few years, open office floor plan facilitating/requiring more interaction and communication, etc.

I've seen plenty of situations where there was a real intent to hire somebody, but the final approval just never came through. When money is tight you'll find this happening, especially if the situation is worsening over time.


Time that could be spent doing more productive things, and is thus not a sunk cost.

Yes, much of this recruiter email is from 3rd party recruiters that hope to get a commission from the hiring company. They reach out with the broadest search terms.

A nitpick: it's not the companies that are interviewing without intent to hire, it's the 3rd-party recruiters that are blasting you. Developer time is expensive and typical companies don't waste that.

I think "get another job on Monday" is a euphemism; 1-3 months would be pretty representative of the current market in the SF/SV and Washington, DC areas.

That may be the case, but why bothering interviewing if you have no intent to hire?

Another job as programmer, or another job as a project-/product-manager?

I've seen co-workers, who were way more skilled than me, be on the market for almost a year. One in particular was my mentor and it took him about 8 months. Another was my direct manager and it's been over a year.

There is an order of magnitude fewer jobs available for manager than for regular engineers. That's why it probably would take about a month to find a job as an engineer with a few years of experience, but 6 months or more for an engineering manager with 10-20 years of total experience.

That makes sense. I think my manager is going to go back to being an engineer.

The rule-of-thumb is that you should expect to spend 1 month looking for a job for every $10,000 of salary you expect to make. So it's not at all surprising that an engineer would take 8 months to find a new job.

I don't think that's a very helpful rule of thumb. For one thing, it defies the notion of supply and demand.

The hot jobs with modern skills are paying the most and also desperate to find people. It's people who favor older stacks who have trouble finding a job and get paid less.

>However, for anyone even mid-level, I don't think this has been good advice for several years.

The implication is that this advice has been good historically, but is "going away". In the article he argues to value jobs over job prospects.

"Historically" is relative - I don't think it's been good advice for at least 15 years, but it might have been 'actionable' advice in SF/NY/etc for a bit longer.

I agree. On my latest job, it took more than three weeks from me accepting their offer to a starting date, normally this is fine, but I was unemployed at the time. By contrast, my previous job was ready to start weeks before I was.

How long did it take to get that offer, from when you started looking?

Between 2-3 weeks, though I think my first interview was 1.5 weeks from when I started looking.

I just have a point about the last piece of advice:

"Make small convex investments. Learn a little bit of a lot of things–machine learning, internet of things, virtual and augmented reality, 3D printing."

I find a lot of advice to be diametrically opposed to this. Many other people advise you to "go deep" in a single topic and be the expert on that topic. (It also seems to contradict the point above it, but only if they are both read a certain way.)

So which is better advice? Is there a study out there?

I like Scott Adam's take: http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/care...

To be especially valuable and impactful, it's easier to be very good at two things and own the intersection than it is to be the best at one thing.

That's awesome. I hadn't read that before, but it makes perfect sense to me.

Now just to find out where the intersection of my skills are. Right now, I'm not entirely sure what that would be.

There aren't going to be a study on there because the most relevant feature is evolutionary adaptation. Going deep on a single topic works great when that topic is in vogue, but leaves you open to disastrous results if that topic loses its sheen (or becomes over-subscribed with competition). Think, for example, of those poor engineers who invested their lives in BlackBerry systems. Conversely, seeking to build a wide range of skills necessarily reduces your ability to go deep on any one topic, but gives you the ability to more quickly react to shifts in the industry.

Thus, anecdotally at least, my company (and I) advise our staff to become 'T-shaped' - have one area of deep competence, but familiarize yourself with other areas at least to the extent that you can have an intelligent conversation on the topic. This leaves you desirable for your knowledge but not forever tied to that one area.

I know you wanted a study, and the above is anecdotal, but it's based my experience recruiting and many discussions with candidates.

I'm not sure BlackBerry developers are a good example. Some of the best engineers I know working in mobile got there because they worked for years on BlackBerry learning how professionals used their phones, how to optimize software for battery life, how to adapt company workflow to mobile, etc. Making the switch to the modern incarnation of the smartphone with touchscreens wasn't difficult.

It seems that outside a few safe areas (compilers, operating systems, etc) it's really hit or miss on whether your skills are adaptable to the evolving tech landscape.

If not Blackberry, then:

1. Novell Networks.

2. SAP.

3. Peoplesoft.


5. Y2K.

6. Perl.

7. Visual Basic.


9. XML.

10. Freeway Engineering (if you were in California in the 1970s).

11. Nuclear Engineering (if you were anywhere on Earth after 28 March 1979).

There's an old saying, "Jack of all trades, master of none." Less well-known is the rejoinder: "though ofttimes better than master of one".

The point being that finding yourself with a single competency can be narrowing. Multiple points of expertise give you leverage and pivot capability. The balance is in sorting where and how to develop expertise.

Lot's of Flash developers got caught with their pants down. If you were good, you moved into iOS (or jumped on the ever morphing javascript train), but lots of them were not T shaped and struggled to transition their skillset.

Fair enough. I'm sure you can think of a technology, though, that made nice coin for a few years until suddenly it didn't.

They're not mutually exclusive. You can learn a little bit of a lot of things on the path to "going deep" in a single topic. I believe this is how you end up with T-shaped skills: https://en.wikipedia.org/wiki/T-shaped_skills

My dad is quite fond of this adage from a journalism school professor in the 80s: "know all about one thing, a little about everything, and where to find the rest."

"T-shaped skills" or whatever you want to call them + the capacity to learn is quite powerful.

Agreed. Learning how to learn is vital, and certainly not easy.

A few years ago I gave a talk at a university discussing this very topic. My view is that you should focus more on an "arrow" shape:

- become a senior with one topic (you don't have to be the ultimate master on this) - have mid-level skills on topics surrounding that one main skill - have a junior-level skillset on the outlying topics - have some knowledge of anything beyond that

For example: a back-end developer should be really good at back-end development but they should have a very good understanding of the front-end, DevOps, and DB as well. They should have some rudimentary understanding of how UI/UX works and system administration as well. Beyond that, they should have basic ability to understand what's being discussed regarding product development, marketing, how the OS works on bare-metal, etc. etc.

I feel like that makes a more well-rounded employee that has an easier time moving around their space, understanding their co-workers, and, worst comes to worst, shifting to a new topic when it becomes relevant.

Exactly this. It's about finding a balance: know enough about a specific topic that you're a go-to person ("an expert") and enough about other topics to understand the context and opportunities for your area of expertise.

Too much focus and you can't see the forest for the trees. Too much general knowledge and you're a jack of all trades, master of none.

Finally, note that "balance" is subjective. It's the balance that works for you and where you want to go. Deep, focused experts are valued. Generalists are valued. Find your niche.

That's great, another one of those things that I've never found the right term to articulate but lines up very well with my intuitive understanding.

Going wide also has benefits as you'll stumble across things that have surprising application in the areas where you've gone deep.

The other aspect to look at is if you're only an expert in machine learning, every problem looks like it can be solved with machine learning.[0]

[0] https://en.wikipedia.org/wiki/Law_of_the_instrument

I'd love for this to be true, but I constantly find myself limited by time. I either have time to learn one thing really well or a little bit about a lot of stuff -- if I try to do both, I never end up getting the deep knowledge of the first thing.

A lot of people have responded by recommending the T shape. I had never heard of it before.

Why is the better than being n or m shaped (great at 2 things; fairly good at 3 things) and so on?

It seems the point about the deep skill going obsolete still stands.

If your one deep skill does go obsolete then being arrow-shaped better enables you to shift one of your mid-level skills to expert level, in which case you do become M-shaped . . .

Personally I like the octagram !!!

Become a specialist expert in something well-paying and bound to be in demand for a long time, but learn enough about everything else that management doesn't consider you outdated when they decide to pivot, and may keep you on during the transition.

Become an obsequious corporate yes-man, but be resourceful enough that management will value you as a "self-starter" and "independent thinker".

Be quirky enough to seem creative to management, but synch up perfectly with whatever process is already in place no matter how bizarre or soul-draining. If you rock the boat too much, you -- not the process -- will be considered the problem, as it's easier and cheaper to fire you than it is to implement real change.

If all these things seem self-contradictory, welcome to the mindset of Corporate fucking America. You should see the correct answers to the Unicru tests which are actually used as employee screening for low-level retail positions.

This is the best advice I've seen on this topic: http://dilbertblog.typepad.com/the_dilbert_blog/2007/07/care...

The advice I see everywhere is to do both. Be a "T shaped" individual who has a shallow knowledge over a broad range and a deep knowledge over a narrow range.

It'll depend upon what everyone else is doing, too. When everyone else is in "spray and pray" mode, it behooves you to go deep and build expertise, because then the depth of your knowledge really makes you stand out in the crowd. When everybody else is going deep and specializing, it behooves you to explore a lot of shallow ideas, because there is probably some low-hanging fruit that someone else is missing.

Which mode are you in now? If it's one of these two, what are you learning?

Everybody is saying both / be T-shaped. There is no free lunch though. You can't have it both ways. If you choose both that means you are going less deep or less wide than you could have gone had you picked one. That may seem obvious but from my experience it is not. Closely related to how we engineers often give unrealistic, overly optimistic work time estimates . Beware!

The T-shape metaphor is imperfect. In reality, going deep doesn't mean digging down into an isolated vertical of knowledge. Knowledge is a graph. To gain more knowledge in one topic, you've got to traverse the graph, following edges most likely to lead you to a better understanding of the topic. Inevitably, during this traversal, you'll encounter many adjacent topics. The deeper you go, the more adjacent topics you'll encounter. Some amount of breadth comes as a natural side-effect of depth. There are few topics where chasing depth will lead you into a totally isolated subgraph for the simple reason that topics that don't relate to other topics tend to be less useful to study.

But then -- to bayonetz point -- are we really giving any negative advice? Just learn? There are only so many hours in the day. Is there anything we are recommending against?

There are two things we are recommending against.

1. Sinking too far into a rut, getting to the point where you have a narrow specialty (fine) but identify with it and are uncomfortable with even thinking about anything outside it.

2. Trying to do everything. With all due respect to Heinlein, specialisation exists for good reason. There will be zillions of worthwhile things you never learn much about because you can't spare the time, and that's okay.

In other words, being I-shaped is a problem when circumstances change, and being rectangular is a fool's errand; that's the context in which we recommend being T-shaped.

It depends on you, your proclivities and what you want out of life.

The value of the "T" depends. If you have real strong expertise in areas like identity or some security practices, those skills are super valuable and you really need a great deal of expertise to even know that the super deep sub-disciplines are. Unless you chose unwisely, a "T" skill set in most things means you'll have a 95th percentile or higher income with a two income family.

IMO, if you "go deep", and make yourself a world-class expert in something you should be deciding to be a contractor and know who the customers are who care. FTEs with deep expertise get screwed in terms of compensation and screwed worse if the winds change and you have to leave involuntarily -- nobody will believe that you are actually an expert if you were an employee. If you want to be and employee, going deep is a waste of time.

There's an approach called "T-learning": be deep in a single topic, but still maintain the broad outlook.

With some luck, you can turn it into Ш-learning later.

I think it is supremely useful to have a deep understanding of one subject, not necessarily so that you're an expert of that subject, but instead so that you experience the process of working hard to understand something. The challenge of learning something deeply requires more focus, and the focus skills you gain can then be reapplied in the future to learn other topics more quickly.

Learn a lot of things, "specialization is for insects" [1]

The type of person who follows this advice will have no problem going deep on the stuff you really like, that will just happen because you find things you love doing. It's much more likely you'll need the push to broaden your interests, especially after you get used to being good at a few things. You'll end up with both a balance of general and specific knowledge and know more about what you personally can do long term.

Of course, it all depends on what your goals are. Self-improvement? Money (specialization is risk, how much are you willing to take on)? Happiness? Fulfillment? Power?

[1] http://www.elise.com/quotes/heinlein_-_specialization_is_for...

Also, what does "convex" mean in this context?

It doesn't seem to be a common term but I found one post saying a convex investment has a lot of upside and little downside, with concave being the opposite: https://www.bogleheads.org/forum/viewtopic.php?t=15932

So I guess the idea is to be ready to position yourself as an semi-expert in a variety of technologies that haven't gotten big yet, but could.

The answer is both. This is the "T-shaped person" archetype who has broad but shallow knowledge of many areas, which gives them a toehold from which to tackle any problem, and deep knowledge of a few areas, allowing them to work on complex problems.

When creating art one must maintain an awareness of how all components fit together to create a beautiful piece that works as a whole. It's important to know what you don't know even if you have no urgent need to learn those things. Anecdotally, figuring out what I enjoy learning (information theory, social systems) and my life goals (early retirement so I can study independently and spend more time with my family) have helped guide me into machine learning and entrepreneurship. Life's too short to learn everything!

I think it's like any other type of investing: iterate on what you invest in every x days/months/years and make adjustments based on how their value changes. Also, diversify.

I think for many folks, at some level, you are enough of an expert in tech ABC that spending a lot more time on it gives diminishing returns. At some point, investing your time in something that's enough of a departure that might only be a 'jr-level' in that tech might be a good thing, while not completely ignoring your previous skills.

Just my own view on this as someone with the 'luxury' of already being 'expert level' enough in certain tech to be able to look at new things.

I don't know about a study, but I figure if you're a real expert in something—especially something less trendy than the suggested topics—your job expectations can become mostly decorrelated from the broader job market. It's like the job equivalent of a hedge fund. What that actually looks like depends on the field your specialize in and the sort of connections you can build but, hey, in the worst case you can always revert to a generic developer job.

My skill/specialization visualization is the paint drip model (generalization of T). You're adding a little of this skill, a little of that, one catches your eye and you dive deep for a while, then a little of this, a little of that.

I assumed that readers had one strong skill already, hence the emphasis on broadening.

From experience - you will naturally "go deep" on something you find really interests you. But it's still good to be aware of various technologies

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