Ask HN: Where are all the non-web jobs?
I'm a fairly "fresh" developer (less than a year out of college) who will be moving to the Chicago area in May. Since graduation I've been working at the company I interned at and was able to secure that position through the internship program at my university, so hunting for a tech job is totally new to me.
Using some of the more standard online outlets for job searching (Dice, Stack Overflow, Indeed, Glassdoor, etc.), I've found very few jobs that aren't web-related. I have seen a handful of embedded programming jobs, but those tend to require a background that I lack (EE or CE, whereas I have a Comp. Sci. degree). My only other prospects seem to be in the financial and gaming industries, but those positions are few and far between and tend to require previous professional experience that I lack.
I'm afraid I'll have to pursue a masters or doctoral degree in order to pursue jobs in any area outside of the web. Is this accurate, or am I simply looking for employment in the wrong places?
71 comments
[ 0.25 ms ] story [ 1130 ms ] threadI haven't looked for a job in a while, so I can't give you great advice on where to look for jobs. But as someone who works on enterprise software, I can tell you that if you're only seeing listings for web programming jobs, you're not seeing the majority of job postings for software developers.
There's a very wide range of software between web application programming and embedded software. Most of the software used by businesses is on the back-end - the web stuff is just the top layer that users use to interact with the systems. For example, think of all the software that runs behind the scenes at Amazon.com: shipping optimization, inventory management, recommending products to users based on purchase history, etc. - none of that is interactive, it's all crunching through data.
A few sources of job leads that you haven't mentioned: (1) lots of companies have job postings on their own web sites; (2) local head hunters may have a broader range of jobs in your area than the major job sites; (3) networking: talk to your friends to see if they have any job openings where they work.
This is mostly where I've had luck when I'm searching - find companies in the area that you're interested in and check out their careers page!
And if you really want to work in finance or in gaming, then go to meetups or reach out to people in the field with cold emails, asking to just learn more about what they do (rather than immediately flinging your resume at them). You should always be networking long before you start actively looking for your next job.
Came here to say this.
Also, if you don't find anything or any ideas in the following, you could refine it for various $INDUSTRY.
https://duckduckgo.com/?t=lm&q=chicago+software+jobs&ia=jobs
As a disclaimer (I'm currently employed by IBM) there are lots of non-gaming, non-finance, non-frontend programming jobs open on the jobs list that IBM posts (ibm.com/careers/) but they are really targeted toward people who are going "somewhere" as opposed to going "anywhere."
That said, programming was previous known as "data processing" for a reason, a big chunk of the reason people use computers is to take data, process it, and then make decisions based on the results of that processing. Whether it is ecologists looking a population studies, traders looking at market trends, or manufacturing companies looking at defects per thousand.
There's a lack of embedded programming jobs being offered by manufacturers in California right now. I live in San Diego and it is terrible.
One might think this is because California isn't business friendly (noncompetes are illegal), or that salaries are too high. I call B.S. on this. The best talent prefers to live in CA due to the weather and the lack of backwards policies. There are some of us who will not work in certain areas of the country due to the lack of employee rights. We'd rather live off our investments, and recurring income than work in such hell holes, where the rights of employees are dead last.
What about in LA or in the Bay Area? Have you explored moving within California?
Have a look at the big hardware vendors: Qualcomm, Broadcom, Freescale (NXP), Nvidia, Cirrus Logic, Xilinx, Apple, Intel, AMD, etc. Note that you'd probably need to be willing to move to a more hardware-oriented area, including California, Silicon Valley, Austin, Boston, or Portland.
I didn't do any work on the Linux kernel (outside of doing a single OS class) while I was studying, but certainly if you're able to contribute to a low-level open source project it's definitely not a bad thing.
Go through industry you are interested in, do some googling and a list of potential companies can be found.
At a major defense contractor years ago, and in defense-specific departments (unclassified roles), my group of 10 had:
- a Cuban-born (immigrated as a child) who never renounced;
- a Kuwait-born (same). (and her Iraq-born brother was in a parallel department)
- a Taiwan-born, not sure when she immigrated
- and the project leader was China-born (pre-revolution)
Now, I can imagine that in higher-security roles, things could be stricter, but I've never seen a public job listing that said dual-citizenship was a deal-breaker.
Reach out to contacts if you have them (friends/mentors from College and your personal life).
If you know specifically what you want to do and you want to stay in your current are, seek out the companies in your area that do this and monitor their job boards and/or reach out to them directly.
You can also try volunteer work, professional comp sci and meetup groups that meet your interests, etc. to expand your network.
Basically try anything you can think of besides just searching online job listing sites, that's the least-effort approach and you'd be lucky to land a desirable job that way.
That's numerically not great, and we mostly advertise for people who can do web programming, but the positions may exist.
Of course, it depends on what you want to do that's not web programming. Do you just hate the web, or do you have something specific you want to do?
They may ultimately exist in a business's infrastructure to prop up some HTTP endpoints, but you can work on them for years without touching JavaScript/HTML/CSS or even HTTP. (A lot of people are using REST across internal services, but Thrift and friends are popular too.)
Then of course there's native mobile application development.
You might have some more trouble finding traditional non-networked desktop GUI apps to work on.
also don't forget about good ol' fashioned systems administration, which is heavily developer-driven now. your job could be to try to code yourself out of a job.
If you follow some of these companies on sites like linkedin, keep an eye on other companies you haven't heard of in their 'people also followed' section. (companies that everyone has followed you likely already know about)
I'm afraid I'll have to pursue a masters or doctoral degree in order to pursue jobs in any area outside of the web.
I'm curious - why would you go to the extent of studying for a masters solely to avoid programming for the web? What is it about the web you dislike so much?
People can simply be uninterested in certain types of work..
I enjoy thinking about and designing the database schema.
I enjoy writing the back-end code.
I enjoy thinking about the REST API.
I. Can. Not. Fucking. Stand. the front-end work. I don't know why; I just dread doing it for every project I’m assigned.
I can’t wait to hit that 1-year mark and start looking for more back-end oriented gigs.
I personally have no problem doing front-end work when I have to and I think the fact that I don't drag my feet or complain about CSS has allowed me to learn it to a degree that has made it reasonable and quick to do.
Also most of the shitty parts of front-end development have been abstracted away with things like CSS vendor auto-prefixing and tools like ClojureScript and reagent. One of my favorite parts of the stack now, actually (when I can use those tools).
In my experience, it's a simple matter of it never being done, and people always being unhappy with it. You can anticipate every possible need, streamline the steps needed for the most common and/or important tasks, and spend a gazillion hours making it look pretty-- not only will no one be impressed, but someone will always complain about something. There is never any 'right' way to do it. It's a black hole.
With back end stuff, it's like, does it work without making a mess and not overuse resources? Ok, good job! What are we building next?
IMO that's the exact problem - you can't anticipate every need. You need to do user testing, iterate over UI layouts, etc. etc... by comparison, backend work is straightforward.
https://news.ycombinator.com/item?id=10822021
If you've internalized most of your systems classes (OS, computer architecture, compilers, networks, etc) and are comfortable mucking around in C/C++, you're no worse off applying for these jobs than most new EE/CE grads.
- Senior Automation Engineer: https://cylance.workable.com/jobs/102010
- Senior Software Engineer: https://cylance.workable.com/jobs/74863
- Senior Software Engineer, Windows: https://cylance.workable.com/jobs/182251
All of these positions are for non-web related jobs. I recommend you look at what are the areas you are interested in, and then target companies that have that. Looking for anything non-web is not a good plan. There are a lot of Data Science related jobs that are not Web as well:
- Data Scientist, Analytics (Instagram): https://www.facebook.com/careers/jobs/a0IA000000G3OLOMA3/
I am somewhat strongly considering the data science route, so I definitely appreciate the nudge in that direction.
Regarding experience in Security, I wouldn't discourage myself on a lack of knowledge of an specific topic. For an engineer is not expected to know everything (it is practically impossible); learning speed is what you should care about.
If you don't have any EE experience, it might be worth doing a second degree - graduate or undergrad. EE is pretty different from writing code.
Lots of people still do work with regular applications such as desktop software though. Find an industry (engineering/cad, graphics, music, finance, medical, games, ...) and see where their software is made. You don't have to do OS:es or embedded to do non web things. Millions of people pay billions of dollars for special niche software in all industries.
I have successfully managed to stay away from web most of my career and think it's a lot more interesting to do desktop (note: desktop apps that couldn't be web apps are the interesting ones, not desktop apps with crud which would be no more interesting than doing it as a web app) simply because the amount of "algorithm work" is much greater than the proportion of work that is repetitive data input/output/validation. Not to mention the tools on desktop aren't html/css/js.
There are HFT jobs to be had for pure CS folks, too --- especially in Chicago.
david dot nay at gee mail dot com
I've gotten a little attention by contacting locally companies directly, but no success in actually landing an interview or a job. I still think it's worthwhile to get your name out there, even if the only benefit is getting practice in marketing yourself.