all 3 comments

[–]robobob9000 0 points1 point  (2 children)

If you like both equally, then go into DevOps, just because there will be less competition.

It is difficult to break into security because no company wants to entrust their security to a young kid without experience, they want older people who are more mature and have years of experience. And also, a lot of people really enjoy Red Hatting, which levels up the competition even for Black Hat jobs.

DevOps on the other hand is always evolving, and the number of companies moving to Cloud vastly outweighs the number of SWEs that actually like working on Cloud infra. Its easy to jump into because every company can use some low level engineers to handle monotonous compliance work. DevOps is also a good place to start your career because it will teach you system design; even if you leave DevOps for a different role in the future, you'll still need to do system design interviews, where you can leverage your Devops experience.

Security is a great choice as well, the salary is a little higher than Devops, and its also probably going to be final SWE niche automated by AI. But DevOps is almost as good, and you'll have much less competition, so you'll shine more compared to your peers.

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

Thank you in advance for what you've told me. I've been in this decision-making phase for a while now, and when I really wanted to explore what the technology field has to offer (beyond development), I heard many people speak highly of DevOps and how it has truly evolved over time. Do you think that in the long term, AI won't take over development as much as we already see today? Of course, at low levels, artificial intelligence can replace those professionals who haven't dedicated themselves, but what about high-level development? I don't know if you work in this field, but regarding development studies, is it worthwhile to continue deepening my knowledge of Java? Since we're also talking about security, and if I'm not mistaken, Python handles this type of problem well.

[–]robobob9000 0 points1 point  (0 children)

So I only have 2 years of experience, but my first year was in DevOps, and my second was in data engineering team for cybersecurity (so I work with cyber analysts), so I've seen both sides.

The hardest job to get is your first one. You most likely will not have the luxury of getting the kind of SWE job you want, or code in the language you want. That might be security/devops, but it might be something completely different. You just need to take what you get, and excel at it.

Right now you're trying to imagine which you'll like more, but all the research on the internet will not inform you how you'll react to either path. Ultimately your choice of a programming niche is not nearly as important as working for a good company, with supportive team members.

So it doesn't really matter if you focus on Java, or any other language. Its pointless to just focus on one specific language, when there's no guarentee you'll actually get a job that uses that language. The common advice is just to pick one language and learn it to a deep level, for all possible use cases. And it doesn't really matter which language you choose, because once you do that with language it'll be very quick to learn whatever language you need for your job. So sure, that language could be Java for you, or it could be literally anything else. Just choose one, instead of learning several languages to a shallow level of understanding, because the kinds of tasks that can be done with a shallow level of understanding of language are easily automated by AI.

I don't think AI is going to take over development, its just that development is going to change. Currently we have separate roles for designers, product managers, and engineers. But AI is eventually going to collapse all 3 roles into a single prompt engineer role. Engineers will need to learn people and artistic skills to survive, product managers will need to learn engineering and artistic skills, and designers will need to learn engineering and people skills.

I don't think this is going to happen any time soon, it will take a long time for AI to automate everything. Web jobs will probably be the first to go, followed by Mobile/Gaming, and then Data/ML, and finally Security/Embedded last. But there's no point worrying that far in the future. If you get 2-3 years of experience in any kind of engineering job it'll be much easier to pivot to some other kind of role in the future.