Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do I find my niche and hone my skills as a software engineer?
6 points by ksrisivan 64 days ago | hide | past | favorite | 12 comments
I'm a third year Engineering student, and by the end of the third year, there's going to be a lot of activity surrounding internships, placements, etc. While I was confident enough in my interest and programming skills when I first started, that sentiment has slowly eroded over the years what with the rise of ChatGPT, and AI which functions as a full-fledged software engineer. Part of the reason for this erosion is also my curriculum, which I feel is more oriented towards just rote learning and marks, whereas I'd expected a more hands-on, application-oriented approach. In short, I feel university is not preparing me for the next step.

So, to my question: how do I find my niche in the broad field of Computer Science, and hone my skills, so that I become invaluable? For one, I'm really interested in operating systems, the Linux Kernel, the concept of Embedded Systems, C programming language as a whole, etc.

How do I get started if I want to revamp my learning? How do I become a proper software developer?

Thanks.




Get a job, get very very good at doing your job, then find a new job right before you start to feel like you're coasting.

Don't worry too much about optimizing for the best company, niche, tech stack, whatever. Focus on getting a breadth of knowledge, learning how businesses operate and how you contribute to their profit centers (great advice here: https://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pr...), how to work well with people, and various approaches to software design.

Keep an open mind (fight overzealousness in your opinions) and approach your work with a positive attitude and you will see all kinds of opportunities to specialize present themselves. Then, your hardest decision will be which specialization creates the most leverage for you.

Don't get bogged down by AI, mass layoffs, or any of the other doomsaying. If you're made to feel fearful, it's because someone is trying to profit off you.

I am a self-taught developer so take all my advice with a grain of salt ;)


>AI which functions as a full-fledged software engineer

Baloney. Pants.

What is currently called "AI" is merely Markov chains on steroids

If an "AI" can do your job, you have a very low-level job (most likely internship or lower)


Yes, the rational part of me is telling that complex jobs in the field cannot be handled by AI alone without human contribution, but there's this other part which is always on its toes and gets just a tiny bit discouraged anytime it sees a news article relating to look how good AI is at this stuff!

I guess the only way to overcome this is to build my fundamentals bit by bit and make myself able to take on complex jobs.


>a news article relating to look how good AI is at this stuff!

Some of that is also related to how bad people have been allowed to be and get away with writing it anyway


You don’t have much time left so you have to act fast.

Find hard problems in areas that interest you to work on, and don’t spend even a second thinking of whether it’s useful for your future career. You can’t predict the future, so you’ll probably be wrong anyway and the time will be wasted.

The point is to get good at solving hard problems in general. I’m on my third Spring project in a row now, and every project has so many NIH idiosyncrasies that no skills transfer at all. The only actually useful skill as a pro dev is to pick up weird, unexpected and even misguided code fast and be productive.


I agree with this advice, but though I would not overly focus on what skills make a good career, but a little bit of thought was good for me. I chose robotics over a PhD in physics and I'm really glad I did. Physics has a lot of really interesting hard problems but is not actually that good of a career path IMO. However as OP has already decided to be a software engineer, within that space I do completely agree with you.


> that sentiment has slowly eroded over the years what with the rise of ChatGPT, and AI which functions as a full-fledged software engineer.

Ignore that; there is no such AI, and no particular reason to think one is imminent.

Never make decisions on the basis of forward-looking statements of the "thing X will totally change the world in Y years"; for every steam engine there's a fusion power plant (practical fusion has been 20 years away, every year since 1950).


When I was a junior in college I took a project class every semester, building a portfolio which showed off my talent and skills.

See if there are clubs which support your interests in engineering and computing.

J


how do I find my niche in the broad field of Computer Science, and hone my skills, so that I become invaluable

Your niche finds you. Or it doesn't. Either way can work out fine. Sometimes your niche goes away (Flash programming for example). Often diverse experience is useful in solving novel problems.

You hone your skills by working hard for many years. You are just starting out. You have fifty or more years of career ahead of you. Keep in mind that people skills are more valuable than technical skills. People skills don't become obsolete. Other people are the best way to good jobs, interesting work, and good times. Be someone people want to work with again.

We are mortal. Nobody is invaluable. Many people are very good. Some are happy.

Good luck.


Thanks for writing. While I agree with your answer, I ask of a niche because I want to tunnel my job opportunities and expectations. If I'm aware of what's in store for me, and I'm stoked about it, I will be more likely to put in more effort in learning and actually doing the job.

Anyway, as you said, there's still much time left, and I'll begin with small steps: C, DSA, OS, etc., and hope my niche finds me.


I'm not a SWE, but I will say often when these types of posts come up, people throw in "work on your management/people skills!" - even if you never manage, interpersonal skills in the work place can be just as useful as any hard skills. Here are three books I recommend:

https://www.amazon.com/Five-Dysfunctions-Team-Leadership-Fab...

https://www.amazon.com/Creativity-Inc-Overcoming-Unseen-Insp...

https://www.amazon.com/Managing-Yourself-Measure-Clayton-Chr...

Good luck on your journey, the fact that you're even asking these things is a great sign. :)


Thanks for the recs! I acknowledge the importance of interpersonal and social skills within any job environ, and I'm working through it (even though some things don't come easy to me). The university also has peppered in varying courses to improve student's abilities.

I hope I practice and obtain the skillset.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: