Hacker News new | comments | ask | show | jobs | submit login
Being a Developer After 40 (medium.com)
854 points by wallflower on Apr 26, 2016 | hide | past | web | favorite | 549 comments

I am based in Bulgaria and I recently had my first experience with a potential Swiss employer. It was rather unpleasant. After I went through 5 interviews we discussed my rates (as a remote consultant). I received a low ball counter offer which was about the half of what I usually charge. This quickly became a racist rant and a senior manager at the company tried to persuade me by saying that with the money they offered I'll "live like a king" in Bulgaria. Needless to say I politely declined because I would much rather work with people that value my work. I was really surprised that such unprofessional attitude came from Swiss company, but apparently it's not so uncommon judging by the blog post.

As a developer in Switzerland, I'm unfortunately not surprised.

Maybe Swiss firms have a real arrogance problem (not all, but many). If it makes you feel any "better", your country of origin is not the reason (I get comments like that while living in Switerland too).

They are mostly just clueless. Large Swiss firms even more so (Swisscom being the main offender).

EDIT: To clarify, I got lowball offers with some other bullshit reason like "but it'll help bootstrap your career". As if my multiple years (15+) of career in international companies doing a good job (as developer/architect/senior) was not enough for their position, somehow.

Precarity at CERN, aka cheap disposable temp labour w/o healthcare:


And a warning to non-western members:

"The cost [...] has been evaluated, taking into account realistic labor prices in different countries. The total cost is X (with a western equivalent value of Y) [where Y>X]

source: LHCb calorimeters : Technical Design Report

ISBN: 9290831693 cdsweb.cern.ch/record/494264

On top of the above, the usual package for prospective employees:

Resolution of the CERN Staff Council

- the Management does not propose to align the level of basic CERN salaries with those chosen as the basis for comparison;

- in the new career system a large fraction of the staff will have their advancement prospects, and consequently the level of their pension, reduced with respect to the current MARS system;

- the overall reduction of the advancement budget will have a negative impact on the contributions to the CERN Health Insurance System (CHIS);


Pensions which will be applicable to new recruits as of 1 January 2012; the Management and CERN Council adopted without any concertation and decided in June 2011 to adopt very unfavourable mesures for new recruits. http://www.gac-epa.org/History/Bulletins/42-2012-04/Bulletin...

Given that cheap and disposable trainees — PhD students and postdocs — fuel the entire scientific research enterprise, it is not surprising that few inside the system seem interested in change. A system complicit in this sort of exploitation is at best indifferent and at worst cruel.

While I understand the point you are trying to make (CERN is partially on Swiss territory), it is not a Swiss employer by any stretch of imagination: they have extra-territorial status, like the UN.

Swiss laws and wages don't apply to CERN (workers there also don't pay taxes, or contribute to Swiss social welfare).

Its annual budget is about 1 billion _swiss francs_.

La Suisse pourrait contribuer à améliorer les conditions sociales des travailleurs détachés du CERN. Le Conseil fédéral est prêt à évoquer la question avec l'organisation.

Staffs and Permanents are very well paid, even Fellows considering you pay no taxes and you get free UNICA healthcare which is insanely good compared to what you get in Switzerland (it's worth 1.2k CHF monthly, can cover your whole family).

It often does sucks if you work at CERN for some university, the salary then depends on their rates, and often you don't know where you will be in 2 years, but you still get UNICA + no taxes...

Then the problem is that getting a staff or permanent position is very hard, then again CERN cannot hire half the world, it's a matter of needs, From what I witnessed most people just take CERN as a stepping stone and move on, unless you're one of the lucky few to get a staff (and you're ok with gambling 5 years to get a permanent).

Staffs and Permanents, even Fellows are by and large from Western Europe. In particular senior staff positions (ie. decision making). Just look at any orgchart in any division.

Which makes sense given that these countries contribute the most to the funding of CERN.


Then we both agree, that jobs are not awarded accorging to the matter of needs, neither merit for that matter. It is about the most funding, which is self-selecting in the long tradition of Western European capital concentration: the first among equals. Makes sense, but contradictory to any publicly stated charter (be it CERN or EU).

It's not what I said. They are pretty explicit about how the selection is done btw https://jobs.web.cern.ch/content/recruitment-policy


The Swiss also have a real ageism issue. When I worked there, I had a good friend who was Swiss that got fired. He was in his 50s at the time and the attitude was that nobody that age should be coding. He was a very good developer, but couldn't get hired because of his age. He started a web development company. The key to his success was that when he met with clients he presented himself as "the boss" with his crew of young developers. Back at the office, he was that crew of young developers. He told me that if his clients thought he was the one developing the code, they'd never have hired him.

As an American I've heard this is a major issue in our software industry as well. But I'm young and I don't know any significantly older developers so I can't really verify.


I think you are verifying it.

My point is that I'm only passing on hearsay.

as you get older, looking for a job isn't called "looking for a job", it's called "sales". and you can "look for a job" for other people, too.

Yeah, that's supposed to be good business sense: you pay less money for the same amount of work. In truth though, you get what you pay for, always. Software works the same regardless of who writes it, where they live, or how much you pay them, so if you pay less for a piece of software you'll just get a piece of software that's worth less money.

It's exactly for this reason that big corporate software is generally shite: because they try to get it at a discount by paying low wages to consultants whom they think they can afford to underpay because they live in a poor part of the world (hint: India). Then they end up with horrible messes of software that nobody wants to work with, at which point they have to pay more money anyway to convince anyone to fix the mess.

It's just people thinking they're so smart when in fact they're short-termist and dumb.

If what you were saying was true, you'd be getting better quality developers if you only hired guys that were born in your high-wage country. Thats not how it works.

I've met a lot of very bad german developers that command a decent wage, simply because there is a scarcity of talent, and I've seen lots of eastern european guys do a fantastic job earning much less, because thats how their local market is like.

I agree that it is never a good idea to pay less than the local average, though.

except for the most part the market for talent is an international one and the good engineers wil move to the high paying jobs.

you find exceptions and cost of living in different places creates some disparity but as a rule "you get what you pay for" still holds water

"t the market for talent is an international one and the good engineers wil move to the high paying jobs."

you assume that getting a visa is easy. Often impossible or insanely difficult.

Since this thread starts with a Bulgarian developer applying for remote work with a Swiss firm, I think it's fair to say we're not talking about moving or visas. We're talking about an international market for talent in remote development.

The device you used to type in your opinion was likely produced in Asia. This enabled you to pay less without getting less.

You can in fact get a Bulgarian developer which is just as good or even better than many Western European or American developers (I have hired a few) and for a fraction of the price.

Meanwhile they may still be paid very decent amount of money that allows for them to have a standard of living exceeding the one they would have had if they had been employed in Switzerland with Swiss salary, and Swiss living cost.

You don't always get what you pay for with developers or any other services or products. Sometimes, but not always.

From my traveling experience the cost of food in large cities in Bulgaria and Romania is about the same as the cost of food in Canada. Yes, they have (much) lower wages there and they will accept your low offer because they have no better choice to make more money. Please don't delude yourself in believing you pay them a fair/decent price. You just pay them better than what they could make locally.

Oh, please. From my experience living in the US and now living in the capital of Bulgaria I know that the price of food, housing etc. is way lower here than in the valley or NYC. Easily 3 times cheaper. And the tax is lower too.

But don't take my word for it: https://www.expatistan.com/cost-of-living/comparison/sofia/s...?

A decent full stack developer in his early 20s with no or little college education and 2-4 years of working experience is paid out 25,000 dollars yearly after all taxes and social contributions are paid.

Adjusting for living expenses that's like being paid out some $70-80,000 in the valley.

Developers here don't have debt, easily save up money, live in nice apartments, drive German luxury cars, enjoy 5-6 weeks of vacation where they travel to foreign countries. They meet in at 10 AM and leave at 6 PM sharp. We eat lunch together at restaurants every day and take plenty of breaks. From what I have experienced living 5 years here, life as a developer in Sofia (the most expensive city in Bulgaria) is more comfortable than in the Valley or New York.

Professional opportunities in the US are probably better, no doubt about that, but that's another story.

So many Americans simply don't understand what you're saying. Having lived outside of the US myself for almost 10 years and planning to do so again, it's a world of difference.

I'm in love with the entire Iberian peninsula, particularly the southernmost bits. It's poor(er), beautiful in people and in landscape, the weather is nice most of the time, and things are affordable, even by the local sheep farmers. I won't be getting rich, but I'll be living and working on my own terms. Best part is, the wife is amenable to this after the children are out on their own. My wife is in the medical field. She can likely transfer her license and skills over. Heritage-wise, she's from the area, so this is a bonus as well.

>>now living in the capital of Bulgaria I know that the price of food, housing etc. is way lower here than in the valley or NYC. Easily 3 times cheaper

You're comparing two of the most expensive places in the world to Bulgaria, it's likely that your statement is true of many parts of the US.

But also two of the places in the world that pays developers best. I bet developers in Oklahoma City are paid much less than in SF or NYC in average. So the main point stands.

I was talking about the average cost of life in North America, I think Montreal and Toronto can be considered about average. The cost of living in the Valley is not representative for medium to large cities of USA or Canada.

That only weakens the argument. Cost of living in Toronto is nearly 2.5 times higher than Sofia: https://www.expatistan.com/cost-of-living/comparison/sofia/t...

But median salary in Toronto is merely around USD 50,000 before tax according to payscale: http://www.payscale.com/research/CA/Job=Software_Developer/S...

That leaves Toronto developers with significantly less than Sofia developers when you adjust for taxes and purchasing power.

So, do you sell your product(s) in Bulgaria, or in the US?

Denmark, mainly

I assume that means you get a Denmark sort of price for your software. Yet you pay your developers a Bulgarian sort of wage.

I don't want to moralise, but in this case I don't see how I can avoid the conclusion that you're basically ripping them off. So I'll just stop here 'cause I don't like to moralise- but I'll just say that I'd never work under such conditions.

I thought it was the nature of business to sell at higher prices than you buy.

Feel free to moralise but try to live up to it yourself: Don't buy anything produced in parts of the world where people make less than you. Buying employees or services or products are the same, you know.

With virtually zero percent unemployment for developers in Sofia, need for programmers everywhere in Europe, no visa-requirement preventing anyone from leaving Bulgaria, and some 10-15 percent of the population already having left, I think it's fair to assume that nobody is getting ripped off.

The thing is that I don't have much choice when it comes to, say, electronics or the clothes I wear and so on, but I'm not the person who employs the people who make those things directly and I don't profit from their work. In fact, if you think of it this way, if I pay £15 for a cardigan made in Bangladesh by a woman who gets paid £5 a week for her work, I'm getting ripped off also. Why am I not paying pennies for it, if that's what her work is worth to whomever is selling it to me?

Your position, however is different than mine. In your case there's noone forcing you to not share a bigger part of your profits with the people you employ. The choice is all yours.

You maximise your profit. Fair enough. But that brings us back to my original comment. In a free market economy, everybody is maximising their profits. For low-wage workers that means minimising the quality of their work, and I don't see any way out of it, if you agree that everyone is a rational player.

The alternative is that you're hiring complete idiots, which also works to your detriment, considering they're expected to work with their brains.

You can always go the extra effort to locate the factory workers who make your clothes and start sending them money directly. You have that choice too.

But back to your original point, do you believe that a shirt made in England that you would pay twice the amount of money for, would be 2 times higher quality than a shirt made in Bangladesh?

>> You have that choice too.

So I end up paying twice for each item I buy? Nice.

>> do you believe that a shirt made in England that you would pay twice the amount of money for, would be 2 times higher quality than a shirt made in Bangladesh?

My experience is that clothes and particularly shoes that I buy which were manufactured in Europe and are noticeably more expensive than the cheaper varieties made in SE Asia, are generally better quality and tend to last longer.

>> So I end up paying twice for each item I buy? Nice.

Not if you believe that you underpaid for it in the first place.

>> My experience is that clothes and particularly shoes that I buy which were manufactured in Europe

I was under impression that those were not available to you from your earlier posts. In that case, you can simply choose to pay more for European clothes of higher quality, so not sure what the problem is.

>> You don't always get what you pay for with developers or any other services or products. Sometimes, but not always.

If you paid people a lot more money you'd get a lot better software.

You get what you pay for alright, regardless of whether you recognise it as such or not.

> In truth though, you get what you pay for, always

This is completely wrong, but it sounds nice.

Do not be surprised, I've interacted with hundreds of companies, many are run incompetently by people unqualified for the position and who have no integrity or morals. Maintain your composure and move on, if you're not being turned down now and again for being too expensive, you're too cheap...

Saying 'you will live like a king' is not the smartest thing. He should have said:

'Please consider that your local living costs are much lower than in Switzerland. We incorporate those differences in our offered rate like every other company does. Thanks for your understanding.'

So the tone was—yes—unprofessional, the attitude not. And even if this attitude is debatable, you have to allow the other party to express reasons for a lower offer in a negotiation.

Both phrases are quite presumptuous. As if I don't know what my cost of living is.

This is how much I charge. Thanks for your offer, it's way below of what I think I deserve for my services. Nah, I don't need a lecture from you on why I should find this generous. Nope, I don't care why you make me such a low offer. What does it matter if I can actually find people who pay the rates I charge?

The market will balance this out. Thanks for your time, have a nice day.

You just gave yourself the counter-argument:

> The market will balance this out.

The employer can also and usually choose between different candidates and maybe there are some or many equally skilled professionals in country x offering their work for much less (because they can because of lower living costs). So, it's reasonable to ask for a lower price in such a context. It's not about disdain.

EDIT: why the downvote?

How's that a counter-argument?

My argument is that "offer me whatever you want; I'll accept whatever I want".

I don't need a justification or a lecture on why I should consider your offer as a generous one. That's how much you can give for my services at a certain point in time. Even if I consider your offer low, I won't find it insulting. But I will find it insulting if you think that I should accept your offer because based on your opinion this is how much I should make because of where I live.

No thank you, I'll be the judge of that.

Both arguments are the same, by rejecting the offer, you, as part of the market, are deciding and affecting the market itself.

I find it quite bizarre that remote workers living in a country with lower cost of living are expected to take lower pay than locals while doing the same work and offering the same value.

Otherwise yes, people are allowed to express silly things and one shouldn't prevent them from doing so, especially when they show their true colors.

Looks to me like they dodged a bullet.

It's essentially about power differentials and narcissism, not money.

When you call out someone trying to lowball you and they start ranting, they're really ranting about a narcissistic injury to their self-image.

Someone who does that will be a terrible client, because they're operating from a position of contempt for the people they employ. They do not see you as an equal, but as an inferior.

If the "inferior" challenges their default entitled one-up world view by expecting to be treated like a competent and well-compensated professional, they're absolutely going to have issues with that.

An apt description of disturbingly many workplaces. This type of "superior" person can hide themselves quite well and have a decent working relationship with their "inferiors", but when challenged will show their cards.

The difference here was that OP had the power to say no, and wasn't trapped by obligations.

I have the impression that some commenters resent them for having that level of self-determination and make excuses for the behavior of the employer.

But why would there be a "differential"?

If you can low one employee, why not lowball them all, and and up with only lowballed employees?

Yeah, like the UK universities I attended offered me a discount for being Bulgarian ...

EDIT: funny as it is, my rates were probably a third less than what a local consultant would have charged them.

I can understand paying remote workers somewhat less, regardless of what country they live in. I would expect productivity to be lower for remote workers and communication with them to be more difficult, hence the lower value.

But I agree that basing salaries on costs of living in the worker's country is wrong. Salaries should be based on what your labor is worth, not what your perceived economic need is. It's exploitative, and it's also not fair to local workers who would get priced out by foreign workers willing to settle for less.

> with lower cost of living are expected to take lower pay than locals while doing the same work and offering the same value

DO you also think it is weird that people who live in incredibly expensive cities like NY or SF should get paid more money then?

I don't think the customer of a remote contractor should care much what costs the contractor has. It's the contractor's job to deliver enough value so that they can charge enough to cover their cost of living and make a profit.

Yes, which is why I can't support the idea of a living wage in general, because a living wage in some areas would equate a nice wage elsewhere.

There are multiple advantages in taking someone local. Mostly in requirements gathering - it's easier to do this face-to-face, but there can also be cultural differences, knowledge of local business practices. Additionally, if it all goes wrong, it's easiest to take legal action when you're both in the same country.

No, that would be just as bad. You pay for results, not for where the person lives.

I don't understand the downvotes here. Results are results. I can understand paying a person more if you are worried about providing a living wage, but really you are paying them to do a service for the company.

If you are looking at two remote candidates offering to do the same work, the fact that one lives in India and the other in Paris should not make a difference in what you pay them (well, timezone difficulties aside). You should pay well for good work, and if it's not going to be good work you shouldn't pay at all. 'Pay well' is not relative to where a person lives, it's relative to the market value of that work.

No, you pay the minimum amount you can to get the job done to a satisfactory standard.

That's the same thing. But we are apparently only capitalists when it means keeping the minimum wage down.

It wouldn't have been smart either. What one should charge is what one can charge. And it's unrelated to what the cost of living is in a given country.

Sad as it may be your being based on a low income country was probably one of the main reasons they approached you. And it is quite universal so I wouldn't attribute it to unprofessionalism. From company's point of view it makes perfect sense to outsource to the best quality/price ratio.

Actually, this wasn't the reason. I already knew the guy who approached me. They were developing a data analytics solution quite similar to others I have worked on/built in the past. They needed a developer with a real-world product experience in their domain. Unfortunately, it wasn't my acquaintance who was responsible for the hiring.

Luckily, the software development market is global and there are some really sane people out there.

Maybe at double the price he would still be the best quality /price ratio.

And still, I was probably 30% cheaper than a local consultant. Anyway, if a relationship starts in this way I cannot image what working with the client would be, so I did myself a favor.

The manager's rant part aside, the reason to outsource to the Eastern Europe, Ukraine and Russia is and has always been the rates.

That's very much untrue. EDIT: I stand corrected - this misses the point.

Sure, wages are lower than elsewhere (especially Switzerland), but the quality of engineers in eastern europe is very high.

Case in point: Google Switzerland employs lots of eastern europeans with Swiss-level wages. That wouldn't make any sense if the only reason was money.

EDIT: My math and electronics teachers (both women, data point) in my Swiss engineering school were Russian and Romanian. Their shared theory was that during communism teaching material was not written by teachers, but was written by topic experts (expert mathematicians were forced to write teaching books). It sucked for the experts (they were forced), but was great for students to have a book written by a master to study. Their point, not mine.

I think there are several other reasons why hard sciences developed more than soft sciences in former Communist states:

1.You can't really use ideology to fight them. If a researches comes and says that 2 + 2 = 4, even the most fervent apparatchik (Communist party member) would have had a hard time spinning it into 2 + 2 = -1. While in other fields such as sociology or history... things are a bit more malleable.

2. They're practical and quite far removed from anything that might stir up anti-establishment actions.

3. The "1984" factor: if you need highly skilled mathematicians and physicists for your weapons, you really need them. You wouldn't want to issue your army 7.5mm rounds for their 7.62mm rifles because someone was bad at engineering :)

    That wouldn't make any sense if 
    the only reason was money.
Yes, it does.

Fewer Swiss would work for tech wages, because they can more easily get jobs in banking, finance, law, medical that pay better and/or are easier. Or hail from old money, and are artists, musicians, run galleries ... A similar phenomenon is at play in tech in the US, which is full of foreigners from EE, India etc.

> Google Switzerland employs


No. On-site, in Zurich.

They have arrangements with authorities to get work permits more easily (it made a lot of debate in the press). They "import" qualified workers, paid Swiss salaries. If price was the only matter, that wouldn't happen - Google would open a development office there instead (they have smaller ones, but the Zurich office is the largest that is not in Mountain View).

> No. On-site, in Zurich.

Yeah, so I assumed.

Your "very much untrue" remark is very much off the GP's point then, which was that those considering remote outsourcing to Eastern countries do that mainly for the cost reasons. Not that these countries lack the talent worth paying for when onsite.

Ah, good point.

Thanks for showing me the problem with my argument.

I think in contrast to the Uk and US - work relationships in a lot of European countries are much more rigid and hierarchical.

This very much depends on the countries. For instance Swedish companies typically have very flat hierarchies, much more so than US companies. In fact when a US company buys a Swedish company often several layers of managerial hierarchy is added.

That's one part of the equation the other is availability of qualified people.

As a developer over 40, my biggest challenge is actually that the management has come to expect weekend work and late nights as the norm. As someone with a family , I can't put in those hours every day and every weekend. Single programmers who can put in those kind of hours are rewarded and those who cant are singled out for ridicule or "performance concern chats with manager". Projects have gone agile and they have not accounted for the unexpected shit that happens, low level functional designs seem to have fallen out of fashion and the deliverable deadlines have become ultra aggressive.

And the mangers' attitude is that "they can shake any tree and it rains qualified programmer resumes". Here in Toronto, there is a company called Allegis and all major employers post their developer job here. The headhunters are plugged into Allegis and they call you based on keyword match. Have you ever seen poor people huddled outside HomeDepot, hoping to be picked up? Thats what it like to be a developer searching for a job in my town. Most enterprise dev jobs are focused on a very narrow set of skills; so it doesn't matter how good you are with designing solutions or algorithms you know -- what matters is do you know java/c#/angular(new) ? And thats all that matters for Allegis keyword match. You are probably thinking I can learn more technologies ; what I am pointing out is that enterprise s/w development process is based on the fundamental principle of getting barely skilled people who can put in the hours and keep their mouth shut. But these jobs pay a lot more than startup jobs and have a lot more security.

This is probably an unpopular opinion here, but only a very small subset of developers need to design algorithms or even know any of them by heart.

Disregarding a few years that was mostly WordPress consulting, my experience is largely enterprise C#. Lots of line of business applications, glorified CRUD apps, and some client work. Zero need for any ability to write a BST or radix sort.

If you're working for SpaceX, or Twitter, or a Big 4, of course you should know those things. But most developers don't work for one of those companies. The vast majority of programming is done to further a business other than programming.

Vast majority of developers would benefit from at least passing knowledge of algorithms and data structures.

For past few years I work (not full-time) on what is essentially a prototype of trivial line of business application: stock-keeping system. It is 3 layer and blahblah, with me implementing most of the server side. Amount of various hacks in the server to accommodate requirements of the "It is impossible to linearize a tree in C# without having local SQL database" kind is truly ridiculous (most of these involve few lines of generator-and-list-comprehensions-heavy python code on server).

Somehow there is whole large class of so called "developers", that can only directly transform input to output and anything that requires building some kind of data structure is impossible/unfeasible/whatever for them.

I'd agree with that. My impression is that the profession is bifurcating into two categories:

1) Programmers, who have solid coding skills that primarily work on building systems using existing modules and libraries. 2) Software engineers, who have algorithmic and systems level expertise along with advanced coding skills, and are capable of working on complex software such as operating systems, compilers, and other libraries / components used by others.

Let me hasten to add that that isn't to say one is better than the other. Both are needed, just like both regular doctors (in greater quantity) and neurosurgeons are needed (in lesser quantity) are also needed and all are highly skilled professionals.

>and all are highly skilled professionals

Apparently (and unfairly), our society thinks otherwise - family doctors make $150K/year and neurosurgeons make $750K/year :-)

I'm pretty sure there are more distinguished engineers and other senior engineering roles paying $750/year in total comp at Google/Microsoft/Apple etc. than there are neurosurgeons.

Not to mention tens of thousands of average developers that got lucky with stock options and became millionaires where a doctor of same age is still slaving away as a resident with 24-hour shifts and abysmal pay ($50-$60k year for surgical residents, according to google).

The market (not society) is treating us developers pretty well.

>The market (not society) is treating us developers pretty >well.

I am on the East Coast (outside of NYC, though), have been in the software business for 20+ years and know a lot of smart /accomplished people.

I don't know a single software engineer who makes more than $200K/year in a senior engineering role, as an employee. (We are comparing salaries, not consulting income or stock options here, which can disappear very quickly).

It would be nice for you to step outside of the bubble you live in SV, every now and then :-)

Please include stock grants, because otherwise it's a silly comparison. With that included, I know a lot of people in SV, NYC, and even Pittsburgh who meet that bar. Google, Facebook, Dropbox, Microsoft -- all of these places pay over $200k total compensation for senior engineers. A grant of shares of GOOG or MSFT every year isn't likely to completely disappear within the vesting period...

Stock grants for non-executive employees are rather rare (at least on the East Coast).

And even then, once the bubble pops, if you don't sell (there is usually a vesting period), they could be worth much, much less than today. Remember 2000-2001?

I'm confused about this "east coast" thing. Many of the major tech companies that compensate in cash+RSUs operate on the east coast at some scale or another. Heck, in Pittsburgh alone, you can pick from Uber, Google, Facebook (Oculus), and Apple, of the "really big tech companies that give their employees RSUs". You'll find similar options, no pun intended, in NYC and Boston, at minimum.

As I said: The rolling vesting offered by most companies means that you're selling stock every year after your first. So if you ignore the first year (or pretend that it's poorly compensated), it's not that shockingly bad.

I am not in SV (but still on the West coast) and I know several software engineers making more than 200k/year. That includes stock grants, because it's ridiculous not to when the stock is in a public company and can be immediately turned into cash.

> stock options

RSUs in an established big company are much less likely become worthless overnight. Core part of your compensation at Amazon/Facebook/Google/etc...

The barrier to being neurosurgeons is much higher than a software engineer. The average Neurosurgeon will make on average more than than top 1% of engineers. You can look at pure statistics and get that result.

True but neurosurgeons go through almost 10 years of additional training at a fellow's salary (~$50k/year), in addition to a much worse work-life balance.

Looking at the reponses (and downvotes), it looks like my comment was understood as a comparison to software engineers' salaries

I was just pointing out that, even though both family doctors and neurosurgeons go through long and arduous studies, the income disparity among doctors is very high.

Outside of SV and NYC, $150k is more than enough for a single-income family of four to have a solidly upper-middle class lifestyle.

Not, really, if saving for retirement is factored in. Most people aren't saving at all, which is how they manage to maintain that upper middle class lifestyle on what has becoming the equivalent of a formerly lower middle class salary.

It's true. I make in that neighborhood, and I can't even save for a house, much less retirement. Maybe my kids will support me when I'm old.

What makes you think they will be able to afford to, if you couldn't?

If you really feel that you are living beyond your long term means, you should act: you can make more changes now than you will be able to later, and as hard as it can be to accept - this problem isn't going to solve itself.

Thanks, I hadn't thought of that.

Where do you live?


How can you not save for retirement with 150k outside of those places? Are you assuming everyone is getting a Lamborghini or something?

I'm not assuming anything, except that you don't know the costs involved in supporting 4 people, while raising and paying for the education of two children, and while putting together the few millions of dollars it takes to live, pay for medical bills and assisted living for a decade or three after you can no longer work.

So true. Alone its a good salary with retirement needs not so much.

IMHO software engineering is more about how you go about your work rather than what you work on. You can be an absolutely brilliant developer working on complex software but still not be a software engineer, yet still work alongside and be paid more highly than software engineers.

You're designing algorithms even when you're coding a FizzBuzz or a "Hello, world". And most of the business logic is by far more complex than FizzBuzz.

Hah, I was just discussing something like this with a coworker this morning. We both agreed that the business logic we're dealing with is actually less complex than FizzBuzz! We work for a huge bank where nearly all (our) business logic boils down to boolean conditionals. There's almost no math at all and if there is it's all addition and subtraction.

Writing front-end JavaScript is vastly more complicated than the business logic!

Everything I witnessed was not just a bunch of boolean conditions, but a mess of boolean conditions. This is where complexity comes from.

And, think about the awful stuff like derivatives, taxes, etc.

Need to know? Sure.

But being able to adapt, apply and even create algorithms is a big part of what separates crappy CRUD/UI implementation dev jobs from real engineering and research roles. I don't imagine anyone wants to be stuck writing CRUD apps their entire career.

If you are just a CRUD developer then yeah you don't need much to do average work.

If you're working for employers who think it's easy to find good developers, you're working for employers who hire lots of terrible developers.

A recent (UK-centric) study[1] shows that working fathers get a 21% 'wage bonus' on average over their childless counterparts. Is this situation reversed for engineers?

[1] https://www.tuc.org.uk/sites/default/files/Pay_and_Parenthoo...

>As a developer over 40, my biggest challenge is actually that the management has come to expect weekend work and late nights as the norm.

my experience is that this isn't the case, at least not where I am. Last place I was at, the guy who came in weekends was the first of us to be let go. (granted, the first guy to get promoted to direct-hire status also worked more hours than average, but he didn't come in weekends, and he certainly put in way fewer hours in the office than the guy who was let go first.)

There is quite often a correlation between my perception of a person not being very effective and staying super late.

>what I am pointing out is that enterprise s/w development process is based on the fundamental principle of getting barely skilled people who can put in the hours and keep their mouth shut. But these jobs pay a lot more than startup jobs and have a lot more security.

Eh, that's kind of the space I am in right now, only I'm more ops than dev (nearly every job is a mixture of both, most are tilted one way or the other.I am maybe 1/3rd dev, 2/3rds operations, my title is 'SysAdmin' at the moment)

The thing is about the corporate keyword jobs? You are right that they are looking for replaceable cogs, and it usually pays better than startup work, but it is very 'easy come, easy go' - expectations of contractors are super low, and contractor interviews are super short, so while you are very replaceable, so are they.

Where I am, in silicon valley, direct hire jobs at the places where you'd get those easy contractor gigs are kind of a different animal. They pay even more, really by quite a lot, and getting them is a combination of passing a bunch of IQ-test like puzzles and complex social signaling. Now, most of the people I know with those jobs are actually pretty good, so maybe the sorting process is better than I think? My problem is that first, I barely qualify, IQ wise, at least for the best of those companies, and then I am, well, I kind of am a capitalist, and part of the complex social signaling is pretending that you really want to be part of that advertising collective, which is super difficult for me, personally. I mean, I don't mind selling my sword to an advertising collective, but I am not the sort to 'drink the kool-aid' - Advertising is not making the world a better place, and I know that them hiring me is a transactional sort of thing. I'm not joining a collective, and I have difficulty pretending it's a collective.

"you were, are and will be a software developer, that is, a relatively expensive factory worker, whose tasks your managers would be happy to offshore no matter what they tell you."

this is exactly my experience. writing software really doesn't require any great creative mind or cleverness. i'm a pretty mediocre programmer. i got roped into programming as a kid by, first of all because i wanted to make video games, but then once i'd dipped my toe in i found learning new, exotic (seeming) ideas and making clever solutions to problems was a lot of fun in and of itself. but i can think of only one time i got paid to do anything that felt like that: working on a tetris game with bombliss, without the official tetris rules. the rules of tetris are surprisingly deep and refined, in case you didn't know, so that endeavor was utterly insane and disastrous, which was the general character of the company i was working for. but still, it was a lot of fun playing physicist from the tetris universe, trying to infer the rules through experimentation.

to write software, once you have the skill down, is really just about doing the work. it doesn't require any insight, unless you intend to write good software, but no one cares about good software. no cares about the software at all. they have things they want to do, and the software, the making of it, is, if anything an impediment. so is the person making it.

While it probably confirms a lot of fears around here, this comment is pretty hyperbolic. That is to say, it captures the lowest lows (replaceable cog) and some of the highest highs (experimental physicist in Tetris universe). But most of us are not really suffering under those conditions, except (critically!) in an imagined way.

> it doesn't require any insight, unless you intend to write good software, but no one cares about good software.

This last statement is demonstrably false. Many people care about good software. Just like they care about good cars, good vacations, good hot dogs.

But still, grumpy developers will upvote this and believe in it. They then become a self-fulfilling prophecy. They see threats that don't exist, then at some point they call out those threats and in doing so cash in their chips.

I've seen many smart developers miss great opportunities in doing this. They could be learning to make their own terms and push back, taking advantage of high demand. Instead they become a plumber, landscaper, or Ph.D., thinking the grass really is greener over there. Well, maybe so. But that mentality has not changed, so what are the real chances?

"This last statement is demonstrably false. Many people care about good software. Just like they care about good cars, good vacations, good hot dogs."

i care about good software. i know plenty of people that do as well, so you're right that my statement was demonstrably false, but the point is people who pay don't care about quality software. that shouldn't be a controversial thing. obviously they care about their costs and the value they get out of the software, not the invisible quality of it. this is my experience, at least. like i said, i'm a mediocre developer. maybe my customers aren't as discerning, or they don't have very interesting problems to solve.

also, it's interesting that you characterize being a replaceable cog as the lowest of lows. let's be honest, that's life. of course i'm replaceable no matter what my position in a company. if i own a company, that company's replaceable. it's not a lowly thing to be replaceable, it's the nature of things. like they say, the cemetery's filled with indispensable men. that's not to make every living human being feel lowly, but to help keep perspective.

> This last statement is demonstrably false. Many people care about good software. Just like they care about good cars, good vacations, good hot dogs.

If allowing poor software means delivering on time, and thus being able to afford those cars, dogs and vacations, which do you think the people in charge of those things will choose?

I feel "software dev" is too broad. And the ambiguity disguises choices that might harm you prospects.

I read this: http://quantjob.blogspot.com/2011/12/how-to-avoid-quantdevel...

And the description of being "sucked in" to a "housekeeping IT" rang scarily true. Match with this phenomenon: https://pbs.twimg.com/media/B64WFyuCIAAjq3u.png

And you might realise there are shitty dev jobs with poor prospects out there, that bill themselves as more than they are. The whole "passionate about my job" thing then becomes a little sinister.

There are different classes of dev jobs. The bad ones pay little and lead to less, and will usually come painted with BS. The "passionate" dev will be happy with whatever they get, and they'll get very little to be passionate about - in-house housekeeping all the way.

But at least the market is good enough now that you can always realise this later and try to fix things. When the gravy train begins to wain, you might be stuck with what you have...

I'm really sorry for you, there ARE better places to spend the majority of your life if you feel this way about your job. I'm a developer turned manager, I care deeply about the code we write. My Boss (Director of Engineering) and his Boss (CTO) care about the code we write. Hell even our CEO cares, though for different reasons. Good well designed code is not easy and it does take creativity. If you don't work for a place that allows you some measure of that, leave. It's not an easy skill to learn and there is a huge amount of demand, we do not have to deal with crappy environments.

I'm really sad this is the top comment here. It doesn't need to be this way. For reference I'm been a developer for over 15 years and I know why some developers feel this way but they shouldn't have to and don't have to.

i feel a lot of bad ways about my work, it's true, but i really don't see it so much in my original comment. i was just elaborating on a comparison likening programmers to factory workers. i wouldn't necessarily say i'm a factory worker, but i think there is a comparison to be made. is that so awful? is it so awful to work in a factory?

for what it's worth, i'm not sorry for me. i don't like my job, but i've never been satisfied with a job. i don't want to work a job, i want to do my own work, but that's very, very rare to do full time. maybe someday, if i'm incredibly lucky. in the meantime, i have bills to pay. my current job's pretty cushy, affording me a bit of flexibility on time, and enough free time to make progress on my own stuff.

You're describing the lower tier jobs in an industry of disposable software. There are software jobs out there that do value experienced and skilled developers.

I'm 41 and a dev (and manager and bunch of other roles when needed, but most my days are spent with software/hardware dev) and sure, it's all true what this article says, but there is no real personal advice there besides, as others said, just 'don't do everything, but do everything'.

So some unasked advice from a 40+ then which I wish I was told when I was 17 or something: a) believe in yourself; learn from others, but if you have strong opinions or think something is wrong then voice it even though others (are supposed to) have more experience b) fast typing and making long hours are irrelevant c) get out there and mingle with non coders a lot.

All of these 3 points (I learned them at different stages, in order of appearance above; c I only started doing 3 years ago) made me never having to need a job as such, always worked where/when I wanted, always made enough money and usually have enough spare time to do whatever while still performing.

Funny, but those of us not living in the Bay Area do mingle with non coders a lot. It's actually hard to find coders to mingle with. When I visited Palo Alto for example it felt weird. On one hand it seemed great at first, hearing discussion on databases or JavaScript on the street from total strangers. On the other hand it felt like a bubble, like an echo chamber. I actually heard this guy saying he liked some girl and wanting to ask her out with the pretext of raising money for his startup. I was like "on what planet am I?"

It's one of the reason why I left Silicon Valley. I love what I do, and I love to meet with other developers, but I was tired of only meeting people similar to me.

Now it feels good to be in a real city with many different people, doing different stuff. It's much more fulfilling than living in a bubble with clones of myself.

Curious, where did you move to? I am also looking to leave the valley someday, but am afraid that the jobs won't be as plentiful as they are here.

I left the valley in 1991, right before the "web 1.0" bubble burst. I moved to Boulder, Colorado. It's wonderful here. There's tech companies--including an active startup scene--but people are far more balanced, even the nerds.

>I left the valley in 1991, right before the "web 1.0" bubble burst.

Huh? I think you have the wrong year!

The web existed in 1991, but it was still . . . embryonic. No one had yet made any money on it.

>I left the valley in 1991, right before the "web 1.0" bubble burst.

The web existed in 1991, but it was still . . . embryonic. I think you mean 2001.

Unfortunately the housing prices in Boulder are pretty close the Bay Area but I've heard the pay has not even come close.

Thoughts on that?

Most large metros will have at least a halfway-decent number of software jobs available. NYC, Chicago, Dallas, Boston, Minneapolis, St. Louis, etc. all have decent markets. It won't be like SV where there are a million startups, but they also won't be 100% corporate, either. Check out LinkedIn or Dice or something to check a specific area.

Eh, Dallas is about 80% corporate, with the majority being non-software companies. It's really depressing since I don't have any interest in that kind of work beyond the money. There is some small to midsize web/mobile work to be had, though.

Of course they won't be. If anyplace else in the country had the volume of jobs that SV had, it would have equivalent salaries. But it'd also have roughly equivalent cost of living. It's almost a certainty that you will make less (cue anecdata), but cost of living will almost certainly bring you out on top.

In my area unless you want to be one of maybe two "IT guys" in an office, there's really only 8-10 employers within a half hour commute. There is no shortage of turnover or people bouncing around between them as positions open up. Sure it's not like SV where you can probably swing a dead cat and hit someone looking to hire a Go ninja rockstar, but there are plenty of coding jobs, especially if you're familiar with Java or C#.

My interactions were mostly with colleagues/employees I selected and hired myself; hardcore geeks. It gave me social-ish interaction without having to talk about scary non-coding things. I have always lived in Europe and outside my group of friends and/or colleagues I didn't really interact much. And my friends were obviously mostly techie.

Edit: it sounds a bit more negative than it was; I was always happy but now that I discovered this whole new thing I am more assured that the happiness will stay as I have a broader base now both emotionally and business wise if that makes sense

Age is an issue with software devlopment. Early forties is not old at all, realistically you will likely be working for another 20 years unless you've already made significant money. In many professions such as law you're only getting started at 40. If in software it's an achievement to reach that milestone than something is wrong.

As one of the few left of my peers that still develops I would say that it is a milestone. There is a lot of burn out and churn along the way. I knew guys that left software dev to become a worm farmer. Most take the elevator up to management which is what I did becoming a CTO but I always position myself at small but growing companies so I could keep myself hands on with technology. I have two friends left that started dev around the same time as me (92). For most it's just not a long term industry and burnout usually takes it's toll.

That being said the web revolution happened in the early 90's and was a huge shift in development. There where a lot of older devs around at that time who where doing desktop and had no desire to make the jump so 40'ish is also kind of a demarcation line of where an epoch changed in development, so the fact that you see few over 40 devs could be a) that the web was small back then and there where only a handful of us doing it and b) The developers that where doing web in the early 90's where all young, therefore it is kind of origin of a new type of developer.

I would certainly rather farm worms than take many mainstream tech jobs. There's probably much more freedom to innovate.

I haven't seen this much; I read about these stories on HN/Reddit, but don't encounter them in real life much.

What do you mean? You tend to see plenty of devs over 40?

Yes I do. And a larger % I work with are over 30 rather than under 30.

If you're talking about the internet, a decade is a long time and an important distinction. We're not talking about a 32 year old dev. I mean hell I know plenty of early 30s folks.

40 years ago was 1976. We're talking about people who were born not too long after we landed on the moon (or even before). There's just not a lot of people that age who both went into programming and are still doing it, as opposed to management or something non-technical entirely.

So while it's not at all surprising to see an early- or mid-30s developer (I work with many), it is very surprising to see a mid-40s developer (I've only ever worked with two, and one had an almost violent aversion to anything except procedural VB).

Programming is a skilled labor, not a profession, in that you are "supposed" to do it for a couple years and then move on. Like teens used to work at McDonalds and give weird looks to the creepy 30 yr old guy still working fast food.

When its not noteworthy for programmers to have an age distribution similar to the greater population, or for experience to be respected instead of being made fun of, then programming will finally become a profession rather than a semi-skilled labor.

Personally I don't mind being made fun of by the kids... I get a lot of money cleaning up their inexperienced mistakes.

> Programming is a skilled labor

Please. That's borderline insulting to people who have to earn a living through actual, physical, labor.

Every programming job I've taken has started with the "Do you see your future self as a senior developer or a manager?" discussion. It's absolutely a viable career path to stay a developer, or at least it is now.

And there's the tired "lol these 30 year old kids don't know what they're doing I'm getting rich fixing their mistakes!!" tripe.

It may be obvious (i.e. general networking effects), but what dynamic let c) give you work and freedom? Please elaborate.

As a coder who really dread interacting with people (especially non-technical people) in the context of work, I'd like to know how this advice would change my life.

Well I had the same thing; I liked to really stick with techies and went to coding events (as far as there were any here). I thought that was nice and it felt like doing it right. Somewhere after selling a company I went travelling and relaxing for an undetermined period of time. Until I really didn't like that anymore and I wanted to get back on the horse and start full time coding again (I'm not the best with self discipline).

A friend told me to go to a fintech event and because it was 'tech' I thought I would meet a lot of very technical people (so same as always). There were only business people instead; most of them had a (long forgotten) technical background but only few were practicing any tech at that moment. I met a lot of them and exchanged ideas, possibilities and contact info. It was in a friendly way as I didn't go there to get work/jobs/projects; I was there to see what this market was like.

I liked it so much I went to a lot of non-tech startup events and general events and talked to more and more people. After only maybe a month or two people started mailing with questions, projects, business proposals etc. One of them I am working on now full time and others I advice, have shares in or work with in some way as the tech adviser.

I dreaded the interacting part like you and I dreaded flying; I started doing both of them (as they are usually intertwined; I need to get to people obviously) a lot and now comes naturally and I sit talking to everyone; on the airport, in trains, in bars, wherever instead of staring into my phone or book. So when I got over this whole dreading sensation I expanded to a much larger circle of non work related friends as well as work related contacts & combinations of the above.

TL;DR the dynamic that gives me work and freedom is the fact that when knowing a lot of non tech people, acting and/or being 'senior' and being able to drop names of people/companies/projects they also know (hence the 'a lot' part) will put you in a position of adviser and tech-trusty. Which gives you opportunity and freedom as you do not need to prove yourself at all anymore.

Thanks a lot for elaborating. I suspect I need to get over my social challenges to make something like this work. And probably move (or travel more) to places where these gatherings actually happen. I live in a "technological desert" at the moment, which is a challenge in itself.

I live deep in the mountains of Spain :) Village with 40 people and more goats than people. That's why the flying...

Heh, I guess I have no excuse, then =)

That sounds fantastic.

I can't emphasise enough how important (c) is. Personally, I find programming to be emotionally challenging in that you have to put emotion, and your own thoughts aside when cutting your code. Add in to the mix the social dynamic of the workplace and the emotional workload doubles.

I always had a feeling this was important. I remember reading about NEDs (New Economy Depression syndrome) and identifying with that, but it wasn't until I went and did a diploma in psychology that the rationality behind it all crystalised.

Across all fields that study wellbeing it's fairly conclusive that social support is one of the most powerful mediating factors. In summary the more friends you have the happier and healthier you will be.

How does this relate to "non technical people"? As a friend once said to me once, when I was going through a particularly kafkaesque work episode, "you need to get outside of your head". You need to engage with people on a plane other than the one you work upon every day - to give those parts of your brain a rest and to help you to develop others.

People are hard though. In many ways more difficult than computers but the key thing to remember is that unlike with computers there isn't a right or wrong thing to do at all times. People have empathy, they can be sympathetic, they can meet you half way and they can help you to figure out what you're thinking.

Start off with something small, where you don't have to have too many interactions, but where you can be around people. I don't know why but for some reason communal drumming classes comes to mind. The key is to be around people where they will get to know your face and you theirs.

I guess my current strategy for handling social dynamics (as an introvert) is not doing me any favours. I usually get quite close (in a professional context) to 1-3 co-workers and have most of my interaction at work with them. All others I keep at a distance. Then again, social interactions with people I don't know very well is really draining for me, and I can't spend that kind of energy at work.

I've always done this, though. I have a few friends that are very close, that I can count on for life, even if I don't "nurture" the relationships continuously. But making new friends is really hard.

Thanks for the advice, though.

All I can say is, I used to be like that. Your approach to professional relationships is healthy as far as I can make out ("1-3 co-workers ... All others I keep at a distance"). The only thing I'd suggest you develop upon is the relationships outside of work, keeping things lightweight (superficial, even) if you find people draining. What's important is to just be there. Socialising is like a muscle the more you use it the stronger, more enjoyable, and easier it will be to use it.

Well put. It gets better when you do it more often, really! And it gets (in my experience ofcourse) very enjoyable.

> In summary the more friends you have the happier and healthier you will be.

Just to nitpick, it's more about the strength of the relationships that you have, not necessarily how many friends that you have.

Hmmm - not necessarily... The operative term is "social support" so as long as you have access to that you should get the benefits. More relationships provide more access to support and stabilising relationships. Strength of relationships are of course important and an important correlate of social support but not a be all and end all. For instance you could obtain support thru sports club, church, book club etc of course you want to stay away from 'negative' relationships too which is easier for the more superficial ones. Strength coupled with a bad relationship can be quite damaging too

There's a lot of money out there that code hasn't touched yet. Biological sciences in particular are remarkably stuck in the 20th century. Don't talk to them about bioinformatics. Listen to the things they're doing. As though you were 12. And just ask questions.

I'm 36 and really want to develop (c). I have decent social skills but I have no idea how to find non-coders to mingle with. Where does one start? Meetup groups? Cycling groups? Creating art and showing it?

I find sports are the best for meeting people and actually building a relationship. In my experience, floor hockey, slow pitch, hiking and cycling were good. Oddly, running groups were not. Also better results if it is a mix of men and women.

I think bringing a friend is essential. It reduces the awkward times when you don't know anybody. In addition, it doubles the chance of meeting people because your friend meets people too. A wing men are helpful :)

Art is solitary.

When I go to planned meetups for drinks, it is just small talk or ulterior motives (ie. they are looking for work).

I grow weary of hearing about "white privilege". I likewise grow weary of any of today's politically correct messages: women in combat, bathroom bills, work quotas, transvestite rights. It's all BS.

I grew up a military brat. We didn't have a lot of money. I wore hand-me-downs, had iron-on patches on my knees. My family could not afford to send me to college, so I served in the military to get the GI Bill and worked my own way through college.

I'm over 40, in IT and no one ever gave me hand out in relation to any job or education.

Like an earlier poster said, I'm under no obligation to do anything. I believe in hard work. No one should be given a free ride because they are black, homosexual, female, whatever. Work your ass off to get where you want to be. Full stop. No one is under a moral or other obligation to get you in the door or ensure fair play. I'm not an asshole to people, but everyone has the same opportunities. I realize the military is not for everyone, but young men especially can really benefit. You can do a four-year hitch and have your college paid for. If you like it, you could re-up as an officer and the sky is the limit.

The problem with people today is they have a sense of entitlement that is misplaced. No one owes anyone anything other than moral decency: please, thank you, that kind of thing. Work hard, play hard. Life is better without handouts. You have a sense of fulfillment when you pull yourself up by your bootstraps.

Your whole argument is a strawman. "I didn't grow up a millionaire" doesn't mean that your life would have been the same had you been black, all else equal.

Take a step back and don't be so defensive: "white privilege" isn't a personal attack. It's only meant to raise awareness, awareness that you clearly need, based on your post.

I don't need awareness. I'm keenly aware of what's happening here in America and abroad. I got where I am because I worked hard. I've received no handouts. I paid for my education through my military service. I earned my 3.98 GPA in CompSci because I put forth the effort. I currently work with some blacks who have done the same thing, and they were poorer than me growing up. It's about attitude and what you want. Real men don't want handouts. They don't want a check given to them for doing nothing.

Hell, now there are people talking about a basic income for doing nothing. I agree with scripture, work or don't eat. Granted, society has people who cannot work through no fault of their own. Take care of our less fortunate brothers and sisters, by all means. If you are an able-bodied adult, get off your ass and work for a living. Start of down low like everyone else and make something of yourself. This is where the military shines. A poor guy can rise to the top in the military. Get his college paid for. Make something of himself. Nothing stops these people. There is no such thing as will power. It's want power. How bad do you want to be better, different, not poor, educated. How bad do you want to work to ensure your children live a better life than you? My parents were not perfect, but damn if they didn't raise me right. I work for what's mine and want no handouts from others.

>Hell, now there are people talking about a basic income for doing nothing

Yes, there are. And you know why? Because jobs are being more automated as we speak. What will people do? Where will they be employed? Instead of being happy for introducing driverless vehicles, automated machinery to maintain and harvest our food, we grow scared for our jobs and turn into Luddites. We should be thinking about improving humanity as a whole, not just going "me me me me!".

And I feel you are a bit blinded from your American standpoint. You know who paid for your GI bill and your ability to be in the military? The state - the working people. You most likely didn't produce anything of value in the military, nor did you likely protect anybody. Jose worked his ass off for the tomatoes on your tables, while you most likely stood around with a gun, if that.

>I agree with scripture, work or don't eat

There are many, many people on this planet, and in the US who DO work, but still can't find enough food to eat. Think about that.

Furthermore, basic income would likely get people out of unemployment benefits and food stamps and into jobs because they no longer have a DISINCENTIVE to work! I expect this effect would be about as large as the number of people who quit their jobs to pursue their passions / hedonism.

Everybody in America gets something for nothing. Roads, police, fire, infrastructure. Built by taxes of generations before us. Its all about when and what.

Now the machines are doing most of the work. This is supposed to be a good thing! Ever more of us will not have to work in this new world. Do we let them starve?

That's great. Congrats. You worked hard, you lucked out a bit (we all luck out to some degree, once again this isn't a personal attack), and you got ahead in life. You're right to be proud of that.

White privilege isn't saying you didn't deserve any of that. It's just about appreciating that, despite how it may seem to you, you had some luck with the dice, some luck that you wouldn't have had, had you been black (once again, everything else being equal).

I'm not talking about a basic income (I do think it makes sense in today's society, but that's a whole separate issue).

"Sending the elevator back down" doesn't mean giving out handouts. It doesn't mean hiring people because of their gender or race. It doesn't mean discriminating against white men. It means acknowledging your biases and working to counter those. It's about giving others the same opportunities (specifically, the same benefit of the doubt) you had.

>It's only meant to raise awareness, awareness that you clearly need, based on your post.

And yet, awareness of other issues and even the opposite side of the same issue seem to not be as needed.

> "white privilege" isn't a personal attack.

Academically not, but it ends up being used either as one or as ammunition for one.

>awareness that you clearly need

Case in point.

> No one should be given a free ride because they are [X, Y, or Z] ...

Is that stated in the article somewhere? I'm pretty sure it's not. It also doesn't say anything about "handouts". It only says that certain people have an obligation to recognize their advantages and to make some attempt at improving things. That's quite a bit different than suggesting anyone should get a free ride.

> everyone has the same opportunities.

Not really. That's what it means. Being white makes it slightly easier to get some opportunities.

Two people of the same socioeconomic standing but of different races. One has a lower bar to entry into college because of affirmative action and a easier time getting a high paying job because of diversity needs. Who has the privilege here?

I recently worked for a place where I and one other man were white. Everyone there attended the local university free of charge because they were either black or Hispanic. Not exactly fair. A white man such as myself would have been charged almost full price to attend.

The poorest people I know are whites and I've lived and worked around the world. Yet, the same whites cannot roll into a university and be let in almost for nothing, yet the blacks and Hispanics do.

There's no exact solution to these problems, and I will admit that affirmative action is more of a band-aid than anything else, but POC (I only speak for the US here) in general are worse off economically, have a criminal justice system that disproportionately incarcerates POC for similar non-violent crimes as whites through stop-and-frisk and racial profiling, are stripped of their voting rights

The concept of white privilege makes a lot of white people uncomfortable, including myself for a long while. It's not simple: white privilege is a result of centuries of structural oppression against non-whites. It doesn't guarantee that all white folks are better off than some POC, but the overall differences are stark. Nor does it guarantee that your life was easy.

Saying "I had a hard life and I'm white" is a single-data point of a very, very large structural problem. Maybe affirmative action isn't the answer, and I'm not certain that it is. But to say that all other things equal, a white person and a black person of the same economic status is equal in our society is blatantly false.

POC (I only speak for the US here) in general are worse off economically, have a criminal justice system that disproportionately incarcerates POC for similar non-violent crimes as whites through stop-and-frisk and racial profiling, are stripped of their voting rights

The uncomfortable truth we need to be talking about is that POC commit a disproportionate amount of the crime in the US, and so nothing you said should come as a surprise. The fact that we can't have an open and frank conversation about this is part of the problem. Promulgating white guilt and a perpetuating a victimhood complex in everybody else does nothing to move things forward. It keeps people from empowering themselves and fosters divisiveness. In fact thinking that these other cultures need our help because they are incapable of lifting themselves up without us is actually pretty condescending. It sounds a bit bigoted if you ask me.

But to say that all other things equal, a white person and a black person of the same economic status is equal in our society is blatantly false.

I never said they were equal. In this specific hypothetical I'm saying doors open more easily for the black person.

The uncomfortable truth we need to be talking about is that POC commit a disproportionate amount of the crime in the US, and so nothing you said should come as a surprise.

Notice I said "for similar, non-violent crimes" and "disproportionate" [1]. It's true, poverty and crime are heavily correlated [2], and I live in a community where such crime exists at high rates (Downtown Oakland).

In fact thinking that these other cultures need our help because they are incapable of lifting themselves up without us is actually pretty condescending. It sounds a bit bigoted if you ask me.

The War on Drugs was created to incarcerate black people and hippies [3]. For crimes that more than 50% of my classmates and myself, have committed (possession of marijuana, dealing marijuana, various other drugs), extreme disproportionate incarceration has occurred in the US to POC at disproportionate rates[1]. Once incarcerated, getting back into society is an extremely difficult process, with voting rights being stripped away, with job opportunities scarce, with the mark of a felony on their criminal record. This contributes to a vicious cycle where these realities feed off of each other. It's no wonder then, that all these facts contribute to a never-ending snowball effect on these communities.

I really highly recommend the book The New Jim Crow by Michelle Alexander [4]. It does an amazing job describing this cycle. It's not that "other cultures need our help to stop committing crimes", it's that we all need to be aware of the effects our criminal justice system has on everyone.

[1] https://www.washingtonpost.com/news/wonk/wp/2014/09/30/white...

[2] http://www.bjs.gov/index.cfm?ty=pbdetail&iid=5137

[3] http://www.cnn.com/2016/03/23/politics/john-ehrlichman-richa...

[4] http://www.amazon.com/New-Jim-Crow-Incarceration-Colorblindn...

Notice I said "for similar, non-violent crimes" and "disproportionate"

The article you linked said blacks were being disproportionately arrested because they were selling outdoors, whereas whites were selling indoors. Assuming it is true though, are we really going to pretend that it's simply the difference in skin color and has nothing to do with a culture that glorifies criminal behavior, disregards the rule of law and preys on larger society. If these antisocial subcultures were distributed evenly between the races then we wouldn't even be having this conversation. The unfortunate and uncomfortable fact is that they are more prevalent in specific minorities. But the fact that we can't even talk about this in a straight forward and rational way exacerbates the problem.

I'll give you that historical prejudice has played a huge role though. Historical being the key word. I am completely with you on ending the War on Drugs. If we spent a fraction of our energy on that as opposed to promoting these toxic identity politics, then maybe we would have actually made some progress by now. Despite all of our best intentions, race relations are getting worse and nobody seems to know why. Hmm.

Trick question, nobody fucking knows without knowing their entire history.

Being smart makes it much easier to get some opportunities.

I liked the post, and empathized with some truths in it. I saved up and bought a used Commodore PET in 1977 at age 13. I taught myself assembler, c, basic, and went on to buy a Vic-20, C-64, Amiga 1000, Amiga 500, Mac PowerPC, NCR 3125 (386 pen-based tablet in 1995 or 1996!), and then read up on AI in the 1980s - Neural Networks, GAs, GP, Expert systems, Fuzzy Systems, Chaos, Complexity, etc... I was using Minix on my Amiga before Linux on my PowerPC, and I have dual-booted since, but Windows is also in my repertoire. THEN, I gave it all up and became a welder at an animatronics company that made window displays, stayed in the entertainment field designing stage machinery, special effects, and so on. My last job was at a water show diving and fixing hydraulic and electrical systems as a senior manager and show manager (not in the US, since a senior manager would not be caught dead in the water!). I have now aged 51 years 11 months, getting heavily back into neural nets, livecoding graphics and music while living in East Java, Indonesia. I was born and raised in Brooklyn, NY as a contrast. All I can say, and what I bestow on my older two children (I just fathered a baby girl a year ago), is that I left the fast track to the huge salary to do what I wanted, and that always kept me happy, and busy in a good way. I read books until I don't understand them, and then go back and forth to others until I do, and I stayed physical, and avoided 'desk job' ailments of most people my age. I have grown to know it is time, time with family and friends that money buys you. And if you have food, a roof over your head and some toys, you don't need the other $25K to $100K per year, or what have you. No, there is nothing new under the sun, but I have miles to go before I sleep...

I have miles to go before I sleep.. I like the reference to Stopping by woods on a snowy evening..

Great to see u made yourself a good life in east java.

My grandpa lived in Solo and my dad in Jakarta.

I tried so much to move there. But couldnt make it.

I am still stuck at the hamsters wheel in London. Hopefully i can get a fully remote job and then move to Indonesia. I can only dream !


The Robert Frost reference I played because I always feel like I can keep learning som much more, do so much more, as I think he tries to convey in his article. And I played it off the English translation of his Latin quote, 'Nil nove sul sole' ('Nothing new under the sun') to convey that too. You're never stuck; it's in your head. I grew up poor in Brooklyn, and I have taken lower paying jobs after higher paying ones for the experience and fun of it. You learn to live within your means. You don't need a remote job to move to Indonesia. I live on very little here. I spend more on luxuries like books and credit for Internet. I am far from any big stores or town, so the temptation to just spend is gone too. I am sure you can manage to save $10K USD in a year. I am spending the time studying, exercising, sleeping (I have slept an average of 6 hours or less per night for the past 30 years or so, and now I try and get 8 to 9 hours, sometimes more!). The old cliche 'Life is short' rings more loudly as you get older, and peers start dying around you. In our youth we rally to 'Seize the day', but we don't own it. As Joseph Campbell said and wrote, 'Follow your bliss'. The rest will take care of itself just like the feet and hands wash themselves in the process of showering or bathing. Semoga berhasil!

A question - you are looking for 'fun' in a job and, at the same time, consider programming fun - haven't you been able to find a programming job you like?

Not really. I code what I am interested in. Most jobs are broken down into small parts for many programmers to work on. I like doing one-liners, and code to solve a specific problem I am having in another discipline like engineering, or art.

"That means that you she or he gets 100 KCHF per year, but she or he are actually creating a value worth over a million francs. And of course, they get the bonuses at the end of the fiscal year, because, you know, capitalism. Know your worth. Read Karl Marx and Thomas Piketty. Enough said."

While neither Karl Marx nor Thomas Piketty have a great track record when it comes to economic policy prescriptions (Dean Baker's opinion on this might be interesting for people who share much of their world view with all three of these economists), will they teach me to better negotiate based on my "knowledge of my worth"? I rather doubt that they will, given that the punchline of much of their writing is that worker compensation necessarily trends towards the subsistence level over time, r>g, etc. etc. Certainly if the point is to "know your worth" in the sense of being able to negotiate a better compensation, a better source ought to be available.

Separately, it's an interesting turn of events that fairly politicized economists' writings are now recommended reading for computer programmers. The next logical step is a recommendation to join a political party (certainly joing the political party would help one's career in the USSR where Marx was required reading for people entering the professions.)

a nice piece on understanding self and the pursuit of a rewarding life in tech or code or whatever (with real examples from said life) diverged in a wood of political lecturing garbage.

I think that misses one big point here; and a point that I live by: Don't waste your neurons and time.

Time is the most precious thing you have, so don't waste it learning stuff you won't need. Even if it's shinny. Resist, and for the things you do need, don't become an 'expert' -- pick the things you NEED and scope it well. Then hop along on the new tech that came around...

I always see any new thing I take on as an investment, and I try to make it pay down the line...

I didn't use to do that, and I'm an expert in a few tech that I had fun learning, but have absolutely zero relevance today. See, I can write Altivec code without the scalar version for example. That was useful for about 2 years...

This is where luck comes in. If you wait until something is super popular then you lose the advantage of being one of the first people that understand the technology when it goes into production. Also sometimes you may learn something that never pays off but later it feeds into something that does. I spent a lot of time learning Common Lisp and could never apply that knowledge at work until functional programming became more mainstream and Scala/Clojure became acceptable languages for production.

This had nothing to do with being a developer after 40.

tldr: Banal, overconfident advice on the subject of a software career, devolving into political rants at times.

I have seen developers threatened to have their work visas not renewed if they did not work faster

That was an eye-opener. For some reason I thought Switzerland was a worker's utopia with the relatively higher salaries.

I had the same initial reaction but if you think it through not having your visa renewed effectively comes down to being fired, i.e. the company terminating their dealings with you.

Doesn't make it better (at all), but it's essentially just the threat of firing albeit with more weight behind it for the visa workers. Not the company calling the visa office about you or holding on to your passport, etc...

I have seen people threatened to have their work visas not renewed in Sweden.

Well, this risk is the price you have pay to work in a better country. And anyway, most probably they would have some time (in my case, up to 45 days) after the contract termination to find a new job, so it's not that tragic.

It's not so different in the US either. My previous manager has indirectly referenced delaying my green card process if I didn't deliver on time.

Not for Gastarbeiter. You're supposed to work, pay all taxes and GTFO before you can legally claim any benefits, while still being despised by unemployed locals for "stealing" their jobs.

It maybe is... but not if you aren't Swiss.

Did I just stumble on slashdot? I much prefer the discourse on HN but the reaction to "PC culture" and "White privilege" is basically the same everywhere.

It has never been supposed to mean anything about an individual, and yet that is ALWAYS how it seems to be taken. We (as white and or males) can't help but see things from our individual perspective and take offense at the implication we ever had anything easier than anyone else.

I agree with others in the thread, we just need to throw away the word white privilege and come up with something else because it has been totally poisoned. I'm not saying there aren't overzealous "social justice warriors" that haven't contributed to the misunderstanding of the word.

Just remember, when people use the word white privilege, THEY ARE NOT REFERRING TO YOU AS AN INDIVIDUAL FOR THE LOVE OF GOD.

yet that is ALWAYS how it seems to be taken

This is a clue that perhaps your terminology is loaded, inflammatory, and should be changed.

I find that there's very little value in reasoning about race as a collective, since it's usually just a (overly) reductive variable for socioeconomic status, upbringing, or environment. If you mean those things, say those things. Attaching a racial modifier to a term and then expecting members of that race to not feel described or targeted by it makes no sense.

(And that goes double when that term is used, often, as an attack, not in the thoughtful way you describe, but that is a rant for another time.)

You've actually hit on the exact point, there is no point in reasoning about race, but as much as we wish that people didn't see race, the fact is they do.

That is the entire point of the term. Because of your race, people do reason about your race, and do make assumptions about your socioeconomic status, upbringing, and environment. I'll grant you that there are (probably a very few) people who do get some satisfaction out of feeling like a victim but otherwise, nobody is more tired of reasoning about race in america than black americans (who are of course not the only discriminated against minority).

You seem to be implying that america is post racial and some of just won't let it go.

You seem to be implying that america is post racial and some of just won't let it go.

And you seem to have read your own biases into a very objective and clear point. That point being, stop banging on about how terrible it is people get defensive when you use offensive terms.

If your response to that is "but it's not", followed by yet another academic definition of "privilege" is.. stop. You've missed the point.

Offense is taken, not given. If your goal is to have a frank and honest discussion with someone rather than attack them, you do not lead off by using terminology that is racially charged (as if anyone can choose their race), minimizes someone's struggles in life (of which you necessarily know nothing), implies guilt (however slight), and which is frequently used in bad faith to shut down discussions anyways.

That may not be what you personally intend, but that is what the audience hears. Act accordingly.

Because privilege is based on looking at only a subset of the group. A subset that changes to push a narrative. For example, white privilege often involves some concept related to being given leniency in legal matters. Less likely to be stopped, less likely to be arrested if stopped, less likely to be charged if arrested, and less likely to be convicted if charged. And statistically, that is all good and fair. But then male privilege discussions almost never include that the reverse happens when you look at gender (and to a much greater degree than race).

Also, while perhaps not originally meant to be applied to an individual, that is the common experience with it. It is further compounded by picking only certain areas for privilege to matter and being very stereotyped. For example, one white privilege is going to a school where the majority of the student body was the same race. Except that isn't always true.

While the wording behind privilege is extremely toxic and needs to be done away with, much of the ideas behind it are what directly led to that toxicity to begin with.


Yeah, if you ignore all the other times.

---Disobey authority. Say “fuck you, I won’t do what you tell me” and change jobs.

Challenge authority, but don't be an ass about it. Simply try to help them understand that you are doing them a favor by challenging them. Perhaps say, "Do you mind if I weigh in on that?" If they aren't interested in your opinion still follow up with "I understand you've thought about this, but I've also given this a lot of thought and I also have a lot of experience around this and I've seen it be a problem before."

Warm fuzzy nostalgia aside, this article seems to amount to "Learn everything, read everything, do everything, don't bandwagon, Apple is pretty cool. The other stuff is OK too, if you like that sort of thing. Learn Node. PS. Don't harrass people".

It's an amalgamation of every Medium tech-post ever.

I guess the real message is: believe whatever the mainstream audience believes at the time. You can't really go wrong with always agreeing with whatever the current thought bubble agrees with - and be quick to change your opinions if the herd is moving. When the author saw the derision against Steve Ballmer, and the favor Apple was getting, he made the clear choice to jump ship. And because he was part of that popular herd jumping ship, it worked very well. Follow the wind.

It's actually a pretty good point and is a decent way to always remain relevant. You can't be left behind if you're always on top of the latest thought trends.

EDIT: A missing piece the author points out too: don't be an early adopter of a thought trend (Point 1: Forget the hype). Only jump in when it becomes mainstream. If you adopt something before it becomes mainstream, there's a chance it can fail. If you wait until it is mainstream, but get in just as it becomes mainstream, you get the benefit of being an early adopter and the benefit of never being on the unpopular viewpoint.

So your always going to be playing catch up - back in 94 when i had been playing with the www I volunteered to go to Edinburgh for a month to work on a cutting edge RAD/DSDM Project.

Basically I told my then boss see you after Christmas - If I have followed that advice I would have stuck with Oracle and Java or spent my career in Mainframes

> I would have stuck with Oracle and Java or spent my career in Mainframes

And last I heard, there are tons of job openings asking for experts in Oracle and Java.

So how exactly would that have been terrible in terms of getting a steady income?

Well enough if you want a traditional 9-5 job (which is fine if it suits you) - pity Java is such a PITA to work with though and Oracle do charge a lot! for there product.

Trouble is if your company pivots and you have been doing Mainframe COBOL for 20 years - you might find transitioning to a new language hard.

I would happily go back to mainframes if given the opportunity. I miss the days of the "priesthood of the computer". I sorely miss linear languages like COBOL and PL. Yes, yes, I'm old fashioned, but man, were those the days. I miss programming on my 8-bit Commodore 64, praying I wouldn't run out of space on my floppy drive. Anyone remember Creative Computing magazine. I wrote every program in every issue for quite some time.

Now? I'm stuck working for a salary in a job that pays the bills. I live in Texas (I know, I know) where IT salaries are already low. Texas has that "right to work" mentality. My bosses are not real IT guys in the sense that they love IT. They're in it for the salary, whereas I'm in it because I still love it after a span of pushing bits over three decades. I would retire only if I won the lottery, but if I did that, I would likely buy a Z-Series mainframe and spend my days playing.

I get some of that "praying I [won't] run out of space" with programming microcontrollers for home projects.

> Trouble is if your company pivots and you have been doing Mainframe COBOL for 20 years - you might find transitioning to a new language hard.

Then you are not following the advice discussed.

Well there was a period when it looked like the mainstream was going to switch away from Java, but then Android was released. Java is heavily mainstream still. If you're optimizing, it's still a good bet to stick with. But be ready to jump off if Android switches languages away from Java which may pull enough mind share to make Java a 'niche'.

At least, that's my interpretation of the article's logic mixed with what appears mainstream to me. There's a lot of room for subjectivity, but it's difficult to argue that Java/Android isn't an extremely mainstream direction.

> It's an amalgamation of every Medium tech-post ever.

Very well summarized.

While I enjoyed this post somehow, maybe because I was thinking of the good old times, I didn't feel comfortable reading: I found his views having a touch of an ubiquitous negativity and slight frustration. I disagree with many of his points. And I miss one clear message.

Yet, your sarcastic summary is a breath of fresh air in the HN comments...

I wouldn't call it sarcasm. I had the same feeling while reading.

The OP contains a lot of opinions about a lot of different subjects. An amalgamation.

I don't think amalgamation means what you think it means (obligatory reference to 'The Princess Bride' ;)).

And if you mean by amalgamating that he united or tied together a lot of different opinions on a lot of different things, how is that unpleasant?

He is talking about daring bets on technologies with a potential. Then insists you learn Node.js. If anything my bet is that JS is not worth learning at all because future is all about WebAssembly (and LLVM effectively - he is right about that).

"forget the hype, make sure to learn node and start building bots"

That aside, a lot of the more generic points make sense.

> "Ok, let's make a rails app" > "Oh, I need rails first" > "Oh, I need rbenv first" > "Oh I need brew" > "Oh I need xcode tools"

As a Rails dev, this made me chuckle, yes, I've put a lot of hours into troubleshooting dev setups. But this is the wrong example. All of these are installed with one line on the terminal. And really, there are far simpler web stacks to pick up without even having to leave Ruby. Sinatra on system Ruby works just fine. All you do is 'gem install sinatra', open up a text editor and go.

Really, the complexity you have to watch out for is the complexity you impose yourself. Choosing the wrong tools for the job or the wrong abstractions. For many applications, Rails is overkill.

That involves knowing the one line on the terminal, and when you google "rails set up" you will get a bunch of out-of-date tutorials, and not knowing rails you won't know which is out-of-date.

On the other hand, 30 year old C code will often compile right out of the box, because the people maintaining them weren't chasing the New Flashy every year.

The modern systems suck in terms of maintainability.

Lol as opposed to PHP where you just drop the folder into Apache folder and you're done.

This was a good read - I'm a dev over 40 and much of this rang true. I think there's a lot of great advice in there. One standout for me was "Be prepared to change your mind at any time through learning. " - something that I think we should all aspire to.

Mentioning income gap at the end were very random. I wish author would mention it in the beginning, so I wouldn't waste time reading the whole thing.

In an email exchange I had with C.A.R. Hoare a couple of years back he said:

Paradoxically, I have been working on shared variable concurrency, using a partially ordered trace semantics. Until I retired, I was too frightened to tackle anything so difficult.

Definitely life after 40, 50, 60, 70, ...

Slightly disappointed about the post not being about how they became a developer at age 40, which was what I initially thought it was.

I started my career as a software developer at precisely 10am, on Monday October 6th, 1997... I had recently celebrated my 24th birthday.

I initially drew the same conclusion, but was nonetheless entertained by it.

I found the advice to be quite a mixed bag, but um, having just turned 42, the OP knows very little about being a developer after 40. The article is about what he learned as an under-40 developer.

"Say 'I won’t do what you tell me' and change jobs. There are fantastic workplaces out there; not a lot, but they exist. [...] Do not let a bad job kill your enthusiasm. It is not worth it. Disobey and move on."

Especially Europeans have problems thinking like this. I always advise engineers to keep on looking for better offers / jobs the moment they take a new job. Instead many hibernate in a job for 3-5 years without thinking of their careers and hence miss opportunities.

Disclaimer: To help engineers finding jobs / working on their careers and support IT-firms to find people, I recently started a small headhunting agency.

So mail me, if you look for a tech-job in Zurich. Salaries here after [!] taxes start at 7000 CHF / month. Find my e-mail address in my hn-handle or check out my story "8 reasons why I moved to Switzerland to work in IT" https://medium.com/@iwaninzurich/eight-reasons-why-i-moved-t...

Compensation wise it's still a better idea to move to the USA to work at google & co then. A typical goofacesoft sr engineer gets +$250k/yr total compensation + paid for health insurance with a %30-%40 total income tax rate as a sr engineer.

Also to start a corporation, you have no capitalization requirements and it's easy-ish to hire canadians, australians and people work who work in a foreign office for +1 yr on a L visa. The waiting times for citizenship in the USA are surprisingly less than switzerland if you're not chinese or indian, which is pretty bad when the USA beats you in citizenship waiting time.

And most important of all, there is a shit ton of VC cash to get investment dollars from.

I think you confuse many things here. For canadians US is the better choice but for people from the EU who are not top 5% of the engineers, Switzerland is the best choice.

Being in the top 30% of engineers or even mediocre means you will make a decent or very decent living in Switzerland. I am not sure, if this is true for the US.

As one those engineers who has worked in SV for 5 years, you definitely do not have to be in the top %5.

You probably spent 4+ years of your life going to some sort of university to get a degree to help get something like 60k euro per year software job. So is spending a couple of months really getting good at cracking the coding interview and doing some practice interviews is definitely worth the $70k+ equivalent after tax salary bump. Even getting a job at a FaceGooSoft european office and later transferring to HQ in SF would be a good idea. Do realize though it's hard to change jobs with an L1 visa vs. H1B once you have one, so that should be your goal.

Now the USA has it's non-salary downsides for sure, but if you're just thinking in salary terms then the USA beats CH as far as I can see.

You're assuming that everyone with a bachelor or master in CS can just walk into FaceGooSoft after reading "cracking the coding interview".

That is not true.

The false-negative rate at FaceGooSoft is very high, they have a revolving door of candidates, that is why they can afford it.

I am interviewing people for IT-jobs for over a year now and I met many engineers that are Google-material but did not make it into a tier-1 firm for some reason (they where scared-off by annoying recruiters, where asked unlucky questions at interviews, did not even try or even want to make it in there).

Hence, they have to work at mediocre companies and life at mediocre companies is better in Switzerland than in the US, I believe.

That is why you apply for 10 companies, get 3+ offers and maybe try a few times. They know that people get rejected for BS reasons and it's totally cool to apply again after +6 months. They even will start contacting you again to apply! With enough prep and determination, you can do it, and the amount of time & money required is far less than getting any 2 year masters degree.

You can even apply to not FaceGooSoft, get in the USA with smaller company X and then try from a more comfortable position of having a work visa and being in the USA.

Look at this guy as another example:


Why is it a thing to change jobs every 3-5 years. Seems like only a software developer thing

Yes, it is a software development thing. Labour market is crazy.

Employers are obsessed with "acquiring talent". If you can show "growth potential" (as in, being able and willing to learn and extend your expertise), they will overpay you for the first 2 years or so. After that, they will feel entitled to recover their investment in you, so you will continue to grow, but your salary will stagnate.

Meaning, 3-5 years is the sweet spot for getting another income boost from the next talent acquirer willing to pay you to learn even more.

3-5 years? Try 1-2. The reason is that there are a lot of opportunities, and it gets boring to work on the same thing for a long time. Also you can learn more different things and fill out your resume by changing jobs more often.

That said, I personally prefer to stay at a job for at least three years, given the opportunity.

That article could use a followup. Regarding the immigration cap in particular.

Actually, I think I do mention the immigration cap in my article.

That is even more incentive to come over now rather than in 1-2 years, when the immigration cap for EU citizens will be implemented as planned.

If it is really possible to learn one language each year, and read six books, I'm going to be very impressed with that. Especially considering side projects you actually start in some language, frameworks (which are not the same as languages, obviously), and conceptual things which are language-agnostic. And then comes family, home maintenance and, just sometimes, rest :-) .

Reading six books a year is really nothing, and I'm not even sure why the author makes a big deal about it. Especially those books he suggested, are very short, often lots of pictures and examples. Agreed on the new language though, your best course is to just start a fresh project with something new. That's how I learn new things. Just jump in head first.

I think it's possible to gain substantive exposure to one new programming language a year, to kick the tires and gain insight into some of the features and idioms that make it tick. However, I don't think it's really possible to become an expert in one new language per year. I think it is much more realistic to master one new language every 3–7 years (depending on the language). Playing with one new language per year might help one figure out which new language to master.

Why not? i learnt PL/1G in a week and was productive by the end of the second week.

I can easily go thorough 6 books in a month one of the advantages of commuting by train.

I had the same thought... maybe I am doing something wrong :) I will reflect on that

In 1997 I was finishing high school, and about to commence undergraduate studies. I was "interested" in computing and Linux had passed 2.0 and was well on its way to entering the main stream. I remember obtaining a copy of redhat from my local library and a few very significant threads of my career to date commenced.

Java is also a child of the nineties and 1.1 I believe was the first arguably "finished" implementation. I remember the computer magazines were going off on about it at the time and I got a free Java IDE off a cover disk and wrote my first 2D canvas app.

These were the two main "galaxies" I inhabited for the last 20 years with various holidays here and there. The benefit of inhabiting such relatively "open" galaxies is that they provide easily accessible conduits to other galaxies too.

Thanks for the 90s nostalgia - very nearly brought a tear to my eye.

Seems a bit bitter about the shit working conditions. And he's right. It's funny how the whole trade is shit.

There certainly seems to be a lot of young 'genius' and '*10' types who are willing to sacrifice their youth on the altar of a unicorn in return for a 1 in 100 chance of getting rich, if it's taking you more than 8 hours a day to make a living, you're poor :(

Even if the unicorns win it really depends on where you entered for you to actually make out rich. These days even the employees of the winner are getting shafted. There seems to be no ideas of human dignity or work life balance in this trade. It's not a profession, it's a trade. It should probably be unionized, and it would be if not for the high wage.

Well said.

It's sad that the majority of the discussion from this post is people misunderstanding the term "white privilege" and getting so defensive about it.

Changing topics: that was a great read. The links were also great reads and rereads. What do people think of Joel's six mistakes from the "great software takes ten years", sixteen years later? http://www.joelonsoftware.com/articles/fog0000000017.html

> Companies want you to shut up about that, so that women are paid 70% of what men are paid.

Stopped reading here because I assumed the rest would be equally as well informed. Shame too, I was enjoying the perspective.

Edit: Decided to give the author the benefit of the doubt and continued reading for the opportunity to have my perspective changed. With that said, I'm also not very fond of the anti-white male narrative quoted below, and I'll elaborate on why

> If you are a white male remember all the privilege you have enjoyed since birth just because you were born that way. It is your responsibility to change the industry and its bias towards more inclusion.

I don't think the real problem here is with being white, male or privileged. (Though, obviously our industry has a problem with diversity.) Programmers, for better or worse, typically aren't very sociable people, and thus become abrasive to dissenting opinions. (I'll be the first to admit that I do this, and will continue to do it as I try to improve and reduce this behaviour.) Whether that opinion comes from a transexual black 10x-er or a straight white female who recently graduated from college, or even a seasoned veteran with 25 years experience. Quite often, a difference of opinion for programmers defaults to "they're wrong because they don't think like me." I experience this daily, and I'm a straight white 21 year old male from an affluent community. So to the authors point, yes if we could stop being assholes to each other that would be great. However I absolutely disagree that the behaviour of my peers is racially motivated, and I resent the implication.

And I'm supposed to "send the elevator down" just to those who I assume to be the most slighted minority? How do you suppose that works? Should I just assume that all women need my help and support because they're women? What indicators would one even use to determine such a qualification, other than being systematically sexist and racist? Here's a thought: help everyone, as often as possible! Don't motivate your behaviour based on peoples' identities!

But yes, I do agree with the underlying sentiment that follows, I just wish it wasn't prefaced with unnecessary garbage.

> Do not critisize or make fun of the technology choices of your peers; for other people will have their own reasons to choose them, and they must be respected. Be prepared to change your mind at any time through learning.

Perfect. Why did we need the intro?

I just want to say thanks for introducing me to ponysay. My terminal was dull until you all shared its magic with me.

Thanks for this! A super interesting and well written look into what a career in software development can look like!

My new todo list: 1) Invent time machine 2) Go back in time and make my 24-year-old self read this article.

Nice post. A bit nostalgic but we all need a meme to get readers interested. In the OP's case its "I'm getting older, but I still love what I'm doing. Come join me!".

What I do when a new tech hype comes along, is allocate myself some time to it. Ok, Webpack? Let me give myself three days (around 20 hours) to check it out. If I don't understand it at first, keep pushing. If after 20 hours, I still don't get it, abandon it and move on.

Of course, 20 hours is just an estimate. If after a day, I feel like some magic has taken place (like what Backbone.js did to me), I'm hooked.

And yes, definitely gravitate towards a galaxy. Sometimes galaxies do merge and you will reap the benefits :)

I'm 38, programming for 15 years. And I still love coding and doing systems stuff.

> 3. Learn About Software History

I was reading about zeromq. From zeromq, I linked to iMatrix, OpenAMQP, GSL, and then Pieter Hintjens and Protocol of Dying. Indeed, history of software, including the people behind it, is no less interesting than the software itself.

>The reason for this lies in the fact that, as the Romans said in the past, Nil nove sul sole

This is from the Old Testament.


> A British roundabout with 6 intersections...

There's one of those in Hemel Hempstead. And surprisingly it works really well...

On a related note, if you have the chance to go to Hemel Hempstead, don't.

I think its only 5 now - and the fun thing about the magic roundabout is you can go either way round.

I must admit I used to when riding a bike round there chicken out and use the under pass.

It is not our duty to do anything. If you want to do something fine. But honestly, I work my butt off to get what I've got and I'm perfectly happy to help others that do the same.

I refuse to help someone just because they are female or a minority just because they are female or a minority. I also refuse to help people who won't help themselves.

Those who want to be great, I will help them every way I can. It doesn't matter gender or ethnicity. It's about work ethic.


Applications are open for YC Summer 2019

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