Tech Jobs Are Everywhere Now
nytimes.com
nytimes.com
Also, tangentially, what statistics should I calculate if I want to measure how "concentrated" the distribution is? The first thing that comes to mind is Gini coef, does that apply here or is there something else? The question I'm trying to answer is if the jobs are more dispersed among different cities or concentrated - assuming the cities themselves don't matter.
I'm guessing to study concentration more broadly you really want to study a broader distribution of companies. I'm not sure that looking primarily at CA outflows for future job positions is necessarily an unbiased look at tech job distribution more broadly (and really not just tech jobs but employment at large West Coast tech companies in general).
If you have more flexibility with remote work, there are a ton of smaller cities that many people like. You mentioned Nashville. Some others that come to mind are Raleigh, Minneapolis, Portsmouth NH, Portland ME... The one caveat I would make with a number of these cities is that the walkable (gentrified) downtown is often pretty small so it's really a very different experience from living/working in a large city.
I worked in downtown Nashua NH for a number of years. The downtown was actually quite nice. On the river, quite a few restaurants, some shops, etc. But yeah, outside of a few blocks adjacent to maybe 5 or 6 blocks of Main Street, things either started to get sketchy or just started to blend into the strip mall and industrial parks south of town. Raleigh, where I sometimes travel to because we have a big office there, is very similar.
ADDED: I'd add that if living in "downtown" (such as it is) isn't a major consideration, I'd point out that aside from some places like the Bay Area it's pretty easy to live outside many major cities like Boston but easily go in for meetings or evening events.
Unfortunately, none of our cities seem to be able to be able to grow without housing getting more expansive and traffic getting terrible.
Perhaps once we get really good at asynchronous work, the opportunity will be on the table for one city to try to import substantial numbers of people from all across the world.
Singapore is probably about as good an example as any (at least outside of China) of centralized urban planning (and they even have an interesting gallery on it https://www.ura.gov.sg/corporate). But, while getting around Singapore works pretty well, it's certainly not a city you would call especially affordable in general.
Now that remote work has accelerated into the mainstream, there is zero reason to base in CA, and many reasons to go elsewhere.
Also, the CA of today is very different from the one that cradled the computing industry.
There really was something special about the time and place of San Francisco from the late 2000s up to 2020. The energy that place had was like nothing else I've ever experienced. You can absolutely make great software fully remote. But there's something to be said for being immersed in a culture of likeminded individuals and going to events all over the city every night to share thoughts with them. I'm eternally grateful for having spent the beginning of my career in that environment.
This would be my nightmare. I do genuinely love tech and startups, but talking shop with strangers quickly feels hollow. At conferences I was always looking to escape by the end of first day lunch and maybe go to a local museum instead.
Depends on where you're at in life, honestly. I'd never want to do it again as a grown adult with a family, but when you're young it's a blast. Eventually it doesn't even matter what the meetup is about anymore, it's just about the free pizza, beer, and networking. And as a broke 22 year old paying bay area rent prices, I practically lived off the stuff.
I moved to San Francisco a few years ago with the sole goal of starting a tech company. The “cushiness” of my well paid day job has made me a bit lazy in that regard, but it’s still the goal.
However, I’ve become extremely disenchanted with the city and state, so the idea that tech startup == San Francisco is the only thing keeping me here.
We feel like this is the best choice for our company as we retain 100% ownership and can focus on a straightforward business model of selling people a product that solves their problem at a fair price. Arguably the possible upside would be higher if we tried to go the VC route and get huge fast, but then the potential downside goes up as well. This way we're working ourselves into what amount to incredibly high paying jobs while also owning the asset that is the company.
I've also noticed a lot of rising credentialism in the industry. BS CS is now listed on practically every job posting. With the massive rise in CS grads in the US I truly don't know how a self taught dev like myself could even get a shot at a junior role anymore.
My understanding is the Googles of the world are de-emphasizing degrees but they can’t hire everyone. And you have to pass their technical interview.
I've gotten plenty of employee referrals in the past because people I've worked with know I'm a solid developer, but honestly I just politely refuse them at this point. Every single time it happens, the company just drops you straight into the standard interview pipeline with zero benefit other than perhaps skipping a recruiter phone call. And when I'm inevitably not able to solve some random whiteboard problem or whatever, and I get rejected, it makes the friendship weird from then on.
The first is employees put the names of people they know and have maybe worked with a bit into the system attached to an open position with the hope, in part, that they'll get a referral bonus down the road. That's going to basically go through the regular process.
When I've gotten a job directly or indirectly through someone I knew, it's been through people I've worked with in the past and were usually in a position to at least influence the hiring. I'm not sure any of those jobs (which I've just had a few of) was even against a posted position.
They are massively useful if you see a job you want and can’t figure out how to convince the Applicant Tracking System or non-technical HR rep that you’re worthy despite a non-standard background.
Not needed if you have no trouble getting interviews, and it doesn’t replace having to do the interviews.
I never look at resumes when conducting interviews unless I'm asking the candidate about past projects. It makes you form biases. I don't look at the school at all.
As a data point, some of my coworkers went to MIT, CMU, and Stanford. Many others didn't go to college at all or graduated with entirely orthogonal degrees. I'm at a fintech with $500k total comp packages.
Degrees are bullshit unless you're doing research, using an expensive lab, or need mentorship. You can learn data structures, algorithm analysis, and distributed computing on your own from home using free resources. That's more than enough to land a good job.
Any interview pipeline asking you dynamic programming problems has a broken process.
Sure, yes you can. Statistically speaking how many people actually do this for several years while being focused on other things? I know there are some, absolutely, but I’ve met lots of people with and without CS degrees. It’s pretty clear to me that on average, the ones with degrees are better prepared for programming jobs than the ones who dabbled. I would say it’s also clear that a small minority of self-taught people are even better prepared for jobs than the majority of degree holders. And the best programmers I’ve ever known do a metric ton of both academics and self-schooling, because they devour it in all possible ways.
> Any interview pipeline asking you dynamic programming problems has a broken process.
So the question is: what is the right process? Are you saying the interview should not ask any algorithm questions?
The trouble with being self-taught is few manage to teach themselves calculus let alone advanced calculus, and one can have yawning gaps in knowledge and be completely unaware of their existence.
I can't even fathom why knowing anything at all about calculus is going to be useful when automating things, writing APIs, or doing anything that nearly every business wants their "tech" people to do.
Some things you can't do without math: curve fitting, statistics, implementing Shazam, 3D graphics, write a game engine, do data flow analysis, implement a neural net, non-trivial use of floating point, write a lunar lander game, etc.
I remember two pages of math in a college economic textbook. Reading it, I realized they were doing differentiation by going around the horn. Instead of requiring calculus for the class, they taught it.
Except they never mentioned the words "calculus", "differentiation", or "integration". I suppose they figured those words would dissuade people from the class :-/
The amusing thing is the poor schlubs taking the class would never realize that they'd learned calculus!
FWIW Teaching things yourself is much easier now, i.e. you can get pretty much any textbook for free (nudge nudge wink wink). It's a truly great time to be fascinated by things
But if I'd never gone to college, I would not know that FA existed, or if I did, I wouldn't know what it was good for. I'd probably invent some sort of ad-hoc ineffective algorithm for it. I've certainly seen a lot of ad-hoc kludge algorithms from smart people who simply didn't know there were excellent mathematical methods to solve it.
For example, I know one who was trying to reduce the noise in an electronic circuit. He randomly tried adding resistors and capacitors of various values. Until eventually a coworker looked at it, calculated the right values in a few minutes, and eliminated the noise.
I've seen this sort of thing again and again, in diverse fields.
But if I did need them, I know enough to know just were to look to refresh my memory :-)
Math is the fundamental building block for doing so many interesting things with programs, so to me every interesting programming job requires boatloads of maths. Sure you can do forms and crud and authorization checks and messaging apps and large distributed systems etc without maths, but that doesn't sound terribly exciting to me.
Like I enjoy the fact I know calc but I’m not about to oversell it’s usefulness for most programming. Math is not the fundamental building block of software imho, logic is.
Every interview method ever presented on HackerNews has been labeled "broken".
Contribute meaningfully to open source. Many contributors to the D community have leveraged that into well paying jobs, without the usual academic credentials.
But then I always tended to hire people based on attitude rather than specific credentials or experience.
Still: a. Upwork could lead to full time opportunities b. You still get money while working, and $40/h gathering experience sure as hell beats a third of that working in retail.