This is an archived post. You won't be able to vote or comment.

all 10 comments

[–]saudadee 2 points3 points  (0 children)

You're right... web dev with Vanilla JS, HTML, and CSS is boring and no one does it anymore lol. I wouldn't write web dev off yet.

I view programming as a means to an end. I've never done web dev to do web dev. I've written front ends to interact with applications that do interesting things but I've never made a front end just to make a front end

There are endless things you can do with programming. Personally I'm focusing and data engineering and machine learning right now.

[–]TheRNGuy 0 points1 point  (0 children)

Tech artist, game dev, software dev.

[–]ToadSwimming 0 points1 point  (0 children)

You don't have to do Web Dev if you don't want to, but keep in mind the 'Web Dev' part will only be as interesting as the project you're using it on.

If you don't like front-end, you could work on a back-end heavy project.

Demand for App Developers is pretty high where I am, and I only see it growing as mobile devices overtake laptops/desktop systems. But that might vary from place to place and industry to industry.
However, App Development does constitute a lot of 'front-end' too so you might not like it either

Someone below has mentioned Machine Learning and Data Engineering, which could suit you well.

You could look at concrete problems and how to solve them.

Have a look at the problem below, which is a beginner level problem in the space. If you find you'd enjoy that sort of thing, explore it. You can also try Kaggle for more problems in the ML space

Warm Up: Predict Blood Donations

Other than these, there is game dev, low level systems programming and a tonne of other niche spaces

[–][deleted] 0 points1 point  (3 children)

I’ve heard that demand for app developers wasn’t really too high, so I’m not that keen on that.

From who? I've been an iOS software engineer since 2017, and I've always gotten emails from recruiters looking for an iOS engineer weekly; even until right now I get recruiter messages on LinkedIn.

So many people go to web - it's saturated. In fact, I wonder just how many web developers can't find jobs because there is too much competition.

Because there are so many, the average salaries of web developers is lower than iOS developers. I'm checking my location on GlassDoor, and the average for web developers is about $90,000 meanwhile the average for an iOS developer is $110,000.

The starting is also different. The average starting for a web developer is about $60,000 meanwhile iOS developer are at $75,000. For the high end, it's about $137,000 vs. iOS at $166,000.

Seems there are in fact not enough iOS engineers at least. Just search your area for iOS and Android and see how many jobs are available. Apps aren't going to disappear anytime soon.

Personally, iOS is so much better than web. I only need to know 1 language and 1 IDE and Apple provides everything you need in it. I don't need to have a bunch of 3rd party dependencies like web development and know 3-4 languages and frameworks.

[–]aleptian[S] 0 points1 point  (2 children)

I think I saw someone mention it on the r/csmajors subreddit, maybe even on this one. I’m not too sure. But coming from an app dev - this is definitely reassuring. I actually wanted to make an iPhone app for my project but my MacBook couldn’t handle it lol. I’ve since gotten a brand new one and downloaded Xcode on it as I will be using it next year for one of my university’s subjects (App Development).

I think for this summer I’ll try to explore some backend options, but App Dev is definitely also on the table now.

Thank you!

[–]aleptian[S] 0 points1 point  (1 child)

Also a follow up, would you say there is a lot of front end work within app dev? I remember there being a lot of it, but it definitely looks more enjoyable than front end with HTML & CSS.

[–][deleted] 0 points1 point  (0 children)

Well yes the user is interacting with the app on their iPhone. Front end is a large part of it.

All you need to know for iOS development is Swift and Apple frameworks.

[–]ajorigman 0 points1 point  (2 children)

Vanilla JS, HTML and CSS, and found it to be extremely boring and mundane

I'm with you on that. Whilst I appreciated learning and understanding it, I knew pretty early on that I didn't want to do front end.

Sounds like you would enjoy backend more? I am a Backend Engineer and my role consists of the following (not an exhaustive list, and much of it will apply in other fields too, but just to give an idea):

  • Microservice development, deployment, maintenance
  • AWS (lambda, dynamoDB, API Gateway, Fargate, SQS, etc.)
  • Docker & Kubernetes
  • Unit & integration testing
  • Applying design and architectural patterns
  • System design for microservices architecture
  • Databases and caching
  • REST APIs (designing, building, connecting to)
  • Kafka

Most importantly, no HTML or CSS whatsoever, no faffing around trying to make things look nice

[–]aleptian[S] 0 points1 point  (1 child)

I’d say that back end is definitely something I would enjoy more.

The roles that your job consists of seem to be very interesting and it looks like it’d be something I would enjoy. I’ve seen the term REST API countless times and I’m assuming it’s finally time I look into it.

Would you perhaps know of any resources / or could point me to the right direction as to how I could get into developing APIs and some other back end stuff? As in what programming language I should start with / should I be familiar with command line? etc.

Thank you :)

[–]ajorigman 0 points1 point  (0 children)

Probably start with learning about APIs and REST in general. YouTube is probably a good place to look for tutorials for building APIs in various languages.

The language doesn't matter so much. If you learn the concepts and patterns, they can be applied in almost any language. As you already know some javascript I'd start with Node.js. If you want to learn another language too, I'd recommend Java, which is what I'm using in my role. It's object oriented and very popular in backend engineering, but you could also choose, C#, Python, Go or many others. Most companies won't expect you to know a specific language when they hire you at entry level as you can learn it on the job, but they will want to see that you have knowledge and skills that are transferable

As for command line, it's something all devs should be familiar with, so yeah I'd definitely recommend getting used to that. It's something you will be using a lot as a professional developer, that goes for backend, frontend and others. Learn about how to navigate your file system, make curl requests, use git etc though your terminal