Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Reality for the Average Developer Outside Silicon Valley/Big US Markets?
23 points by frfl on Feb 21, 2019 | hide | past | favorite | 30 comments
Hi HN,

Big US markets, especially Silicon Valley, get a lot of attention. I would imagine it distorts the view of what it's really like outside these big markets. So what's the situation like for the average developer outside the big US markets in terms of ease of getting a job (or switching jobs), perks, salary, quality of work?

I ask as an average grad entering the industry in a non-top-tier, non-US city.



> non-top-tier, non-US city

Up your relevant demonstrable skills enough to work remotely for a company in a big US city.

Alternatively, immigrate either to US or to a country from where it's easier to work for US (hello Canada).

Maybe move to a bigger city in your country and work for its Google or Microsoft office if there is one and if it pays well.

An average nondescript town is not a good place to be a software developer. Low wages, uninteresting, unchallenging work (hello agency work, drupal websites, 15 year old enterprise java codebases), working in an IT dept that is a cost center rather than revenue driver, etc. We can't possibly know what exactly it's like where you are (better ask on a local forum) but that's what it's like more often than not. It might certainly be better than other careers locally, but it's worse than you can have if you're willing to make the effort.


Well said. This, and its excellent followup below should be read and taken on board by junior devs, since it doesn't seem to be common knowledge.

It's like there's this Big Pot of Gold sitting there up for grabs in the Bay Area. But whenever anybody mentions it, all these people come out of the woodwork to explain how that Pot of Gold is only in the Bay Area. Out here in Scott's Bluff Nebraska they only have this little bucket of rocks.

And that's all perfectly true. But our commenter then goes on to explain how we should all forget about that Pot of Gold and instead focus on how to get a few of those rocks, because that's all any of us are ever going to get.

No. That's not the takeaway you should have. If there's a Big Pot of Gold someplace waiting to be taken, your job should be to find a way to get some of that gold.

Yes, it won't happen immediately. You'll need to work on it. Maybe it'll take 5 years. Maybe 10. Maybe you'll need to actually go to the Bay Area for a few years at some point. But know that if you really want it, it absolutely is possible to achieve.

Google alone hires 10,000 engineers every year. Not all of them were born in Palo Alto and graduated top 1% from Stanford. There are dozens if not hundreds of companies who are hiring remote devs at Bay Area compensation packages.

Just because you're a no-experience kid in Nebraska today doesn't mean you need to still be one 10 years from now.

Please. For your own sake. Get going.


I am in Canada, but is there still not an issue with taxes and other things that makes a lot of companies not consider Canadian remote workers? Dont you have to work out a consultant/contract type deal with US remote companies? What companies do you know that do hire remote workers from Canada, let alone remote junior developers :P


Junior remote is hard, which is why I'm saying get the skills first. This is not just a one year journey, you should be planning your path for the next 5-10 years. Optimize for skills and learning first, then go for maximizing income (as much as you can afford this delay). Always keep interestingness and quality of life up high in priorities.

Get a local internship / job first either in your town or in a bigger town like Vancouver / Montreal / Toronto. Learn the trade, best practices, best technologies, get an open source presence, etc. All of this will require a genuine interest in the field and hard work on your own time. You will of course also progress your skills on the job, but relying solely on that you will grow much slower, and will be strictly capped by the quality of your workplace dev culture. You can start your growth before even getting a job btw.

In Canada, lots of companies hire juniors, both big and small. Look at your peers and know how to stand out. Did you build a simple app, put it on github and host in somewhere? Congrats, you have demonstrated more skills than 90% of your peers, and you haven't even interviewed yet. Google your way into finding these companies – see angel.co, many lists of companies hiring remotely, local job fairs, etc.

As for cross border contracting – yes, working for US you will most likely be a contractor unless the company is big enough to have a Canadian office. Better that they don't, then they will be less likely to offer you a Canadian salary. Being a long term contractor is not really a problem as long as you have the skills you advertised. Taxes are easy for contractors. There are legal things you need to know, and you will know after you do proper research on this, but there are no showstoppers there. If you want to take the most from this career, you don't let some paperwork or the illusion of job security get in the way. You work hard to become the best developer you can be, and allow the highest bidder that you're interested in working for pay you for your work.

---

This might sound very... effortless and maybe pompous and out of reach but it's entirely doable. Knowing who you want to be, being interested in your work, and spending a lot of effort on becoming a better developer year after year is really all it takes. It's a long path but thousands of people have walked it.


Thanks for the detailed write up, raquo. I truly appreciate it.


I Work in Czech republic.

So far switching jobs was not a problem. Nor getting a job.

Around 7 years as a developer on some form or other. Currently 2500$/Month with a 4 day work-week. Interesting work. Up to additional 500-1000$ a month for my on-call duties. No additional variable compensation. Some possibility to get pre-IPO share of the startup. No sick-days. 20 day vacation. Vacation is auto-approved :)

Previously similar compensation for a 5 day work-week as a QA/Internal tooling dev at US corp with local presence. Accumulated ~20K$ stock over, but only half of it vested as I was leaving :P 5 days of no-questions-asked sick-days. 25 days of vacation. 15% of additional variable compensation.

Around 30% tax/social-security (there are additional employee taxes on top of my salary, but custom is to pretend that this is the employers problem :) Some opt for self-employment scheme (you can half your tax if you have good accountant), that can be sometimes in a grey legal area, if you are billed by a single large corporation.

Started at 800$ with 4 hours a day 7 years ago.

Currently around 500$/month recurring life expenses (I own my flat, so mostly utilities, insurance, phone bills, e.t.c., if I rented, it might be additional 300$ for 2 bedroom flat?), around 10$ price of dinner at a pub. And feeding a family of three is more expensive than I'd like :)


Thanks for sharing your experience. Are 4 days work weeks common in Europe? I worked on a team that had a UK office where some of the people were on a 4-day agreement (although the agreement was in place before the UK office was bought by my employer). Seems like it's very uncommon to find someone working 4-day weeks in North America or even part time as a developer (but, of course my experience is very very limited)


Not common at all. Unless you are a college student (most people I knew went intern->part-time->full-time)

But most employers are open to them. I used it as a negotiating tactic, where they offered 15% more than I had, and I countered with 20% less time :)


Here's my experience working as a SWE in Australia for about 4.5yrs, mostly in Brisbane and recently in Melbourne. I don't know what is "normal" for SV/SFBA so I'll just list everything I can think of. The first three points are mandated by law in Australia.

* Maximum of 38hrs per week + breaks (~40hrs). I have never worked or been pressured to work overtime, paid or otherwise. I happily do my 9-5 and everything outside those hours is my personal life, especially the weekend.

* 20 days paid-time-off (annual leave) per year. Never tried negotiating for more.

* 9.5% on top of base salary contributed by employer to your superannuation (similar to 401k). I believe 17% if you work for government.

* Comfortable salary. Definitely not SFBA rates but comfortable for CoL. Fresh grad would be ~$40-60k/yr, going up about $10k/yr for the first few years until you reach a point where years of experience becomes less relevant than the type of experience (~5yrs). Some regional variance to account for CoL. I stupidly started low, but then pushed for more until I felt comfortable that I'm paid average market rates. My history was $40k, at ~6mo $55k, at ~1.5yr $70k, at ~2.5yr $77.5k, at ~3yr $90k, at ~4yr (job change and BNE->MEL) $110k. This is plenty to live off and save for the future, especially if your SO makes similar.

* Somewhat flexible working conditions. Some companies are butts-in-seats 9-5 from the office, most will allow some WFH and variance in hours (7-3, 11-7, etc.), some allow full WFH/remote and your own hours.

* Pretty easy to find a new job. Each time I've tried interviewing I've received multiple offers within about 1 month.

* Sane interview processes. Most places will do a 15-30min phone screen so you can decide if you want to proceed, a take-home technical test that takes 1-2hrs, and then a 1hr onsite, before making an offer.

* Offices are mostly open-plan.

* Some companies offer small perks on top of all this, e.g. retail discounts, device allowance, phone allowance, personal development allowance, etc.


I don't have a whole lot of knowledge about the Australian industry, but I would think it would be similar in compensation to Canada (relative to US). So $110K seems quite high after ~4 years.

What allowed you to get to this point? Was there a general pattern that you noticed that helped you go from 40 to 110 in just 4 years? It's quite impressive actually. Was it being in the right place at the right time, professional growth from what you worked on, personal projects, negotiating hard when the offer was made?


Happy to go into a bit more detail on this. As I said in my first post, I shouldn't have accepted 40 to start with. I had received an offer for 55 at another company that fell through when they had a hiring freeze, so I was getting a bit desperate when I accepted 40. The early raise to 55 after about 6 months made me feel a lot more comfortable.

The way the raise process worked at that company, I was never present, never given an opportunity to negotiate or even suggest a number, but I was lucky enough to have a great boss who valued what I did, fought for what he thought he could get for me, and told me to let him know if I was unhappy. I tried to keep an eye on the market (just follow a few recruiters on LinkedIn and it's not too hard), and when I went from 70-77.5 at about 2.5yrs I felt I could get more elsewhere.

I was also at a point where I felt like the growth potential there was running out (it was a very small engineering dept.), when I was offered another role internally reporting to the same boss (was a SWE, new role was Product Manager, again very small company though) so I took it and pushed for a raise to go with it. At the same time, I interviewed at a few other companies and ended up getting offers at 75, 80, 85 and 95. The raise came through at 90 so I decided I was comfortable where I was. This is at about the 3yr mark. Note: These were all quite small companies by global standards, but normal for a small city like Brisbane (50-500 employee range, not FAANG etc.).

Stayed in that role for about a year until I decided to move interstate. I could have kept my position and worked from our office in the new city, but decided it was time to move on. Being a new market that I hadn't been paying much attention to, I wasn't really sure what was fair, but felt I should take my current salary, add about 10% for another year's experience, and then another 10% for increased CoL. I interviewed at a few companies and asked for 110, and got two offers at 95 and 110. I had already decided on the company that offered 110 so was happy to accept it.

I'm not sure I would call this advice, as I don't know how widely applicable it is, but what worked for me was knowing what the market will pay, being confident that you're worth it, then find somebody willing to pay it. If any of this breaks down, fix it. At your current employer, the first step is to get your boss to value you, and my suggestion for this is to understand their job, their pain-points, the things that they're accountable for, and then fix those for them, even if it's not in your job description. Try to get to a point where you are seamlessly interchangeable for them in meetings/dealings with other parts of the business, and actually find opportunities to do this. If they're on your side and the business just can't afford you, as much as it sucks for your boss, it's probably faster to look elsewhere. Hope that helps.


I'm from SEA (Philippines) and work here remotely under a US consulting company. What I hate is it's like a stigma that because we're from a low-cost country we're paid much lower vs those from the West (around 50-70% less) considering I have the same set of skills for a 10yr Software Engineer. I think it shouldn't matter where you're from as long as you're doing a great job, money shouldn't matter.


Right, that's what you think. Are you buying a house that's $1 million dollars? Are you paying $80,000 in taxes? Are you paying $2400 a month for daycare bills? Are you paying thousands for health care insurance? Are you paying $250 for car registration? Or another $1000+ for car insurance or transportation? There's a big SV envy going on from those in tech outside of SV, when one reads about the high salary they command over there, their expense is likewise accordingly.

I also think the stigma is GENERALLY true. The average 10yr software engineer from Phillipines is not going to be anywhere as good as the average software engineer in the Bay with 10yrs experience at these companies that pay good. Sure, there are exceptions, but we are talking about the average. Heck, the average 10yr software engineer in the US outside of the major tech cities can't keep up either. There's a reason most of the innovation and tools you are using are coming out from that side of the world. :-)


> Right, that's what you think. Are you buying a house that's $1 million dollars? Are you paying $80,000 in taxes? Are you paying $2400 a month for daycare bills? Are you paying thousands for health care insurance? Are you paying $250 for car registration? Or another $1000+ for car insurance or transportation?

I'm sure you wouldn't start paying a cheap remote developer more if they decided to move to a more expensive country or their personal expenses went up (like if they decided to have a child). For the same reasoning, you shouldn't demand you pay them less because they currently have low expenses.

Developers should charge for the business value they deliver to the client. A developer's personal expenses is of no relevance to the client.


> Are you buying a house that's $1 million dollars? Are you paying $80,000 in taxes? Are you paying $2400 a month for daycare bills? Are you paying thousands for health care insurance? Are you paying $250 for car registration? Or another $1000+ for car insurance or transportation?

That's not the right logic here. Are you saying that if they do those things in the Phillipines, then they should get a similar salary? I don't think it would be very difficult to get someone to raise the price of a house they're selling to $1 million dollars. One can then say they're buying that house and to give them a salary that allows them to do that. That would be extremely silly.

What you pay someone should only depend on what you get in return, and not on what their expenses of living are. Those are totally irrelevant. You can use an estimate on their expenses of living to know how low you can offer to pay them and still keep them happy, but it's not a justification, only an indicator of a low price they would be happy with.

On your second paragraph, that might be true, but GP's comment is made on the assumption of being equally experienced, equally as good. What justifies being paid much less, then? The real justification is that they can't be equal because, at the same price, it's always going to be more beneficial for a company in country A to hire an employee in country A over one in country B. This because it's inconvenient to have to deal with stuff like different timezones, language barriers, cultural barriers, taxes and other legal stuff, difficulty in physically meeting, etc. These things define the upper bound that a company is willing to pay before preferring to instead hire local for someone of the same skill.

As to the real price that these employment contracts should go for, it should be somewhere between this upper bound and the lower bound of the salary that a employee candidate can be reasonably sure to be able to obtain from their local job market. If the real price is too close to this lower bound, it may be because as a group they're not valuing themselves enough to push for higher salaries, or maybe they're being offered something else that they value that the local job market doesn't offer like remote work.


Willing buyer, willing seller. You could probably buy a mansion in these countries with $500k. Someone else in the same country would take it. I'm personally happy just making enough money to be in top 10% by 30 years old, so others working remotely in the same time zone have to compete with that.

However if you're unique in a vertical, you no longer compete. Let's say you're no longer just an app developer, you're an expert in live streaming videos and CA/DRM for apps. Maybe there are regional/legal difficulties in implementing this.

Now suddenly you are worth a whole lot. A company like Netflix is willing to pay premiums like $100k for a consultant for a week maybe.

If it's a large enough niche, demand exceeds supply, and people are willing to pay closer to what they're valued.


Malaysian here. I'd actually love to have even a quarter the salary of Americans or Europeans. Combined with the low taxes and far cheaper living costs, it's probably higher pay.

Also frankly speaking, American devs are a lot better. Interviewing candidates in both Malaysia and Indonesia, if the higher paid senior ones can reverse a linked list, it's considered quite good. Western companies have much higher standards.


> Interviewing candidates in both Malaysia and Indonesia, if the higher paid senior ones can reverse a linked list, it's considered quite good.

You must be exaggerating, right? What can a developer do if they can't even reverse a linked list? I'm genuinely curious how a developer like that can work.


They can build apps, WordPress sites, ecommerce frameworks, read documentation, and connect APIs. They can probably build some databases and get the idea of normalizing tables.


Some of the company work remotely for only that reason. You always have the option to say no.


In São Paulo, Brazil (the best-paying city in Br) it goes more or less like this:

All of these are monthly salaries:

A good jr developer salary: R$4500 +- R$1500 (today, ~US$1200 +- US$400)

A good middle-level developer salary: R$7500 +- R$1500 (today, ~US$1900 +- US$400)

A good senior developer salary: R$12000 +- R$2500 (today, ~US$3200 +- US$700)

A good tech leader developer salary: R$18000 +- R$3500 (today, ~US$4800 +- US$900)

The highest salary for pure software development that I heard is R$30000 (today, ~U$12000). More than that only for CTO-like roles at big companies.

In terms of ease to get a job, it is ridiculously easy. A struggling startup fired 10 developers and let the market know that they were open to offers. In one week all of them were already working at another company. All of them and already working (not just receiving an offer). We get LinkedIn messages from recruiters all the time. The more senior ones get around 3 to 5 messages a day from recruiters. A little bit harder for juniors, but still easy enough compared to other professions.

The quality of work varies a lot. I like a lot my current work and company, but this one is hard to generalize.


What are some of the top tech companies? I have to imagine the normal ones like Google, Facebook, and Amazon. But then more local companies would be UOL, Itau, Banco do Brasil, Bradesco, etc?


Google, Facebook and Amazon don't have as much developer positions in Brazil. Engineering is mostly done elsewhere and the offices here are more comercial people.

The banks indeed are good places and pay very well, but there are a few smaller startups that are very good employers. Nubank and Creditas (the largest fintechs), PlataformaTec (founder is the creator of elixir), Thoughtworks has an office here.


Having moved from one non-top-tier US city to another, look for an area that has a lot of tech activity spread across multiple industries. If there are a few startups in the area then that is better as well.

If there is a large downturn in the technology space, a place like Silicon Valley is going to see more of an impact. Multiple industries like tech, insurance, banking, biology/medicine, etc. in an area will help if there is a downturn in the economy for a specific industry.


What is the "US big market"? We have developers on the East Coast, West Coast, South Coast, North Coast and even in the middle of the country. To be fair, we also have digital nomads, and we do not really know where they are just that their code shows up in the repository, and they are present in the video conference, albeit sometimes with some odd background noises. We cannot imagine anything more of a perk than be able to work from anywhere in the world. Compensation is based on home office where ever the programmer chooses it to be. There are some sweat shops, some average 80/20 shops, and there are some posh, research programming jobs. Perks, salary, and QoW very much depends on company.


Are the digital nomads all Americans too living outside the country? I've noticed most American companies only hire American citizens for remote work -- due to tax or similar issues.


Dublin, Ireland, senior developer with 15+ years

Very easy to jump jobs, though permie jobs have more hoops to jump through. Most jobs are big corporate, very few startups.

Working as a contract developer (rolling 6 months) at $11,500 per month (25 days holidays factored in). A similar permie role would pay about $8,500 a month + perks (health insurance, pernsion, etc.)

The work is generally not that challenging - a good dev with 5 years behind them could do it.


As someone who works in web development in the UK (and who's writing an article about this very topic):

1. You're far less well paid than in Silicon Valley. Wages vary by region, but in many European countries, developer wages are closer to standard office worker ones than the rockstar ones at Google and Facebook.

2. Tools are often a bit more basic/old fashioned, and design is usually the same. In fact, I'd say the vast majority of the tech world is usually about 2-3 years behind the valley in terms of tech knowledge and tooling and best practices, and that time gap jumps up further and further the smaller the town/less tech savvy the company.

3. Perks are a mixed bag. Some companies have all the ping pong tables and arcade games and free food/drink associated with startups, some just offer you an office environment and say get to it.

4. Quality of work is usually less interesting. Lots of CRUD apps, small business websites, CMS themes, etc. Very few projects that have the goal of 'changing the world'.

5. The workforce is usually more diverse than in Silicon Valley. For all the comments about women in tech and diversity, my experience is that it's more of a problem with Silicon Valley unicorns than other businesses and agencies. Probably because they're not mostly hiring graduates from a select few universities.

6. The ease of getting a job varies. Usually you don't have much in the way of Google esque logic tests, but you'll probably have a few coding challenges to prove you know what you're doing. These challenges will be extremely easy for someone with FANG experience.

7. There is far less interest in personal projects, side hustles, and other such things among developers outside of Silicon Valley and other major markets. Most devs in these places are basically salarymen, they code because it pays the bills and spend their free time doing other stuff.

8. This lack of interest also seems to extend to the companies themselves when it comes to marketing their tech and culture. In fact, I suspect most European companies are absolutely terrfied of inbound marketing, and have no idea how to update a blog on a regular basis.

9. Working practices are often a bit dated as well. A lot of development is still done with the old 'have the designer create a PSD and get the developer to turn it into a website' mentality, and waterfall style project management methodologies haven't been replaced by agile in many of these organisations either.

So yeah, basically the reality for the average dev outside of Silicon Valley is working on a CRUD project with tech and design that's about 3 years behind the cutting edge with a team that build sites as a profession rather than a 'passion'.


I'm a Brazilian working remotely. The reality is really good, specially compared to my fellow countrymen and women.


May I ask whether you're working for an international company (US?) or a Brazilian company? And how senior are you? Is remote work common there?




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

Search: