HACKER Q&A
📣 costac

What if you hate web development?


Is there hope for people looking to break into software engineering if they don't like web development? From the outside at least it looks like all the jobs are full-stack roles. Is it some kind of right of passage? Any advice for someone who genuinely wants to break/transition into this profession but wants to avoid web apps?


  👤 anon2020dot00 Accepted Answer ✓
There is front-end and back-end. I've been in the back-end for more than a decade already and haven't touched front-end once. Back-end is more of processing and preparing the data which will be presented in the front-end.

Also, thanks for recommending https://courses.edx.org/courses/MITx/6.00.1-x/1T2014/course/ in one of your comments; it looks quite interesting.

In this day and age, there is tons of data being generated in institutions like stock trading data for a stock brokerage company or call record data for a telecom company. Usually these data needs to be parsed, summarized or analysed etc.. so there is a lot of back-end work that occurs.

Back-end processing is usually either OLTP (online transaction processing) or OLAP (online analytical processing). With OLTP, it is about the software performing some repetitive task that supports a business function. For example, with Amazon shopping; the software needs to record the order, reduce available inventory of the product, etc..

With OLAP, there is usually some analysis on the data that needs to be generated like a report showing Amazon orders that match a certain condition.


👤 costac
I want to thank everyone for their comments. I'm a long-time and avid Hacker News reader and this was my first real post I guess. The community here is really solid and is largely what got me hooked on programming.

All your responses -- from don't give up on web dev totally because it can open doors, to try embedded software (I hadn't even heard of the term until today) -- have given me so much to think about.

Thanks again, and I know what I'm getting myself for Christmas. An Arduino.


👤 metabro
There’s a ton of non web dev work at big companies. Anecdotally all my work has been in building data warehouses and data lakes.

Having said that, there will be some cross over with web tech and it’s not a bad idea to start there and end up on the back end of you don’t like it.

I used to work with analytical data that mainly came from mainframes and such with no interaction with the web. Then things changed and I had to understand things like json, restapi etc . For people with a web dev background this isn’t a big deal but for me I struggled a bit adapting.


👤 Cerium
I'm surprised there are not many answers pushing you to learn embedded software. I have never had a primarily web development role (my early roles had some web dev for embedded front-ends, but not consumer web). It is a wonderful field where you can really make am impact. Currently I work on medical robotics. Embedded software is a wide field too - you can learn operating systems, drivers, low level embedded, communication stacks, distributed systems, etc.

You can try it out by getting something like an Arduino (or rpi if you want to learn embedded Linux) and trying to automate something where you live.


👤 iamben
Completely anecdotal - but most of the 'software developer' people I know wouldn't know where to start with anything 'web' (I'm sure they could figure it out though!). Whilst a lot of their work might be related to stuff that happens on the web, (like consumer banking, for instance) they're pretty exclusively dealing with the backend systems.

👤 andrewdubinsky
If you want to avoid web development, then choose to focus on languages that are rarely (if ever) used for that purpose.

I'd recommend you focus on C/C++. It will provide a great foundational knowledge that you can use in almost every other part of programming. Also, from what I have heard, it's actually hard to recruit junior developers in C/C++.


👤 nonameiguess
Of course there are other jobs. I've never touched a web developer role, never touched JavaScript, never touched anything that generated html. There is plenty of software in the world. I came out of the Army 8 years ago and the sequence of roles I've done that didn't involve web dev include:

- Algorithmic trading implementation for a boutique hedge fund

- Ground processing for satellite imagery

- Tasking and orchestration of geointelligence product generation suites

- CI/CD pipeline and dev environment internal tooling and automation

- Platform engineering

- Unclassified to classified data scanning and transfer service

- Kubernetes cluster buildout and maintenance automation

All of these involved or still involve distributed systems sending requests and responses across a network, usually using http, but not once have I had to be concerned with executing code in a browser.


👤 hiptobecubic
When you say "Web development" do you mean building servers that are connected to the internet and ultimately do work because someone sent a request of some kind or do you mean building CRUD websites for e-commerce? I agree the latter is really boring, but there are a ton of jobs that do the former. Even jobs that _sound_ like they should be very web-centric don't feel that way if you aren't working on clients or handling HTTP.

My experience has been that places that ask for "fullstack" are generally small shops that don't want to hire specialists because their problems are product-centric, not engineering centric.


👤 pedalpete
Forget about the technology. What are you interested in? Why do you want to "break into software engineering"?

Is Blockchain or Crypto of interest? Go for Solidity. Do you want to code for embedded hardware? C++ (or you can start with Arduino or something and work your way up). AI Data-rangling and ML/AI? Python is a good place to start.

Rather than pick the technology, focus on what you want to do.

The nice thing about starting with web dev is that it's a nice starting point. You can build an interface and get people playing with it, and enjoy that process. Then you can build a back-end and learn what that's all about. You can keep adding areas that interest you.

You're not going to get into Software Engineering without knowing how to code first, which means you've got your own path to create. I did it, but that was back in the day when you could just open the console and often play with the little bit of JS that was on the page. It was much easier to understand what was happening back then.

Good luck.



👤 wbsss4412
I mean for starters, what do you want to do?

It will be nigh impossible for you to break into the field if you have nothing you are actually targeting other than saying “I don’t like that”.


👤 gentleman11
OP is asking about how to avoid web dev but 3/4 of the comments are recommending different types of web dev.

I think they want to learn more about the world of mobile apps, desktop software, graphics, games, embedded systems, ai, audio processing, etc

In games, the pay sucks and you should avoid it. It can be lucrative for founders however, it’s just the employees who lose out


👤 muzani
App development is a different beast. You get the same joy of building stuff, and it's often the same stuff as web. iOS is simpler, not necessarily easier. I've always enjoyed Android though, as it's low level enough that you're messing with the OS and threads but you're not messing with CSS and browser stuff.

👤 drakonka
I have been programming professionally for >10 years and even though I've done some personal web projects and did some freelance web dev very early on, I haven't done what I would classify as "web dev" professionally for around 10 years, until very recently.

I did do backend dev for the last year and a half which is part of web of course, but no front-end bits were touched. Most of my career has been spent working on desktop applications. I don't really know what advice to give you other than "don't apply for web dev roles". I see many non-web positions in my area, they don't seem scarce at all.

Switching to a frontend lean now has certainly been very interesting; there are fun challenges and interesting things to learn in all domains.


👤 throwaway888abc
> Is there hope for people looking to break into software engineering if they don't like web development?

The technology has many aspect.

> From the outside at least it looks like all the jobs are full-stack roles.

Try to change your lenses. Not really at all.

https://www.kernel.org/doc/html/v4.17/process/submitting-pat...

https://developers.home-assistant.io/docs/development_submit...

https://www.indiehackers.com/

Godspeed and all


👤 ranuzz
FullStack roles can transition into non-web development roles. You can branch out to tools development that revolve around web development. Maybe a devops or SRE kind or role if that is where your interest lies.

If you want to leave web development and anything related to it behind then I’ll suggest getting deep expertise in one of the programming languages you use as part of your job (python, java, typescript, etc) and then look for jobs where the core requirement is language expertise and product is not web app.


👤 icedchai
You could look at mobile apps. Just stay away from anything requiring a web view. Otherwise, you'll be messing around with web dev inside your mobile app.

👤 cweagans
There are plenty of non-web jobs out there. I started in web and I'm actively trying to move away from it.

That said: web is a great way to get your feet wet. There's more to it than just making a page look pretty. You can get exposure to a ton of different problem domains and get a decent footing in many of them just by getting really good at web dev (particularly by working on sites/applications run by larger organizations).


👤 tra3
Software engineering is so much more than web dev.

Off the top of my head:

- devops

- security

- mobile apps

- desktop apps


👤 archarios
I'd recommend not entirely dismissing web work as an option. If you do web work, there will be so many more jobs available to you. The work may not be as exciting in some cases. However, it is still good, well paying, work. The work may be less stimulating overall, but I think it's also less stressful. Which gives me more energy for other things in my life that I value more. There's more to life than work.

👤 me_me_mu_mu
> Is there hope for people looking to break into software engineering if they don't like web development?

> software engineering

Web dev is one side of the n-gon we call software engineering.

If you want to be a "software engineer" you need to have a good understanding about how a computer works, and how to program it to do anything.


👤 melling
How about data science or machine learning? Is there a career opportunity there?

There was a lot of buzz a few years ago. I’m not sure if it panned out.


👤 PaulHoule
There is a huge amount of other work in the biz.

If you want to expand your skills right now get an Arduino, some LEDs and a handful of logic chips.


👤 superdario
I'm web developer but I'm focused on backend, PHP only. After 15 years of it, I'm got sick of it, so right now I'm switching to iOS development

👤 adamnemecek
Mobile is relatively pleasant. iOS is nice.

👤 m0llusk
Game development is even worse. Have you tried embedded? And there is always a huge unmet need for drivers.

👤 aprdm
Come work in Visual Effects!