DEV Community

Advice for Intermediate developers

RAM PANDEY on June 09, 2024

Prologue I wrote this blog five years ago when I was a junior developer. The tips I shared back then are still rules I follow today and ...
Collapse
 
danlee1996 profile image
Daniel Lee

Love the post.

I think in today's day and age it is politically incorrect to push the ideas of bringing work home or practicing programming on your off time.

But it is very true that the best way to get better at programming is to put in the time. There are no shortcuts.

Collapse
 
rampa2510 profile image
RAM PANDEY • Edited

Yes its your choice.

Collapse
 
litlyx profile image
Antonio | CEO at Litlyx.com

Loving your job is crucial for continuous improvement in programming.
Being a generalist helps you become a versatile problem solver. Always stay curious and keep learning new technologies, as this will ensure you remain adaptable and innovative in a fast-changing landscape like IT.

Thanks for sharing this!

Antonio, CEO & Founder at Litlyx

Collapse
 
rampa2510 profile image
RAM PANDEY

Correct one of my mantras

Collapse
 
freelancer2020 profile image
Mostafa

Just spread your wings and fail forward if necessary but never give up.. my personal advise here is unfortunately in this field there is a lot of toxic people that can effect your progress, please 🙏 continue and don't lose your confidence about yourself.

Collapse
 
elsyng profile image
Ellis

Good that you bring that up. A lot of toxicity in so many workplaces, and not enough mutual support. There should be much more focus on that. Animosity towards other developers.

And yes, toxicity is not just an abstract concept, it is toxic people, toxic actions. People should be talking and writing more about that.

:)

Collapse
 
elsyng profile image
Ellis • Edited

Jack of all trades, master of none.

"Frontend developer" is not a box, it's already an extensive variety of ever-changing technologies. And I believe there's need for specialists and generalists both.

No offence to anyone, and I'm sure one can find plenty of counter examples, but:
-- I've seen a number of truly awful frontends inside and out, created and maintained by fullstack devs, which I think would have been much better if f/e and b/e were done separately.

Love what you do, do what you love. I think there's nothing wrong with being particularly talented in, say, databases, or frontend, and loving specific parts of sofware development. If I love something more, and I am better in it, why not specialise in it?..

Collapse
 
rampa2510 profile image
RAM PANDEY

I appreciate your perspective and understand where you're coming from. There's definitely value in specializing, and I agree that specialists and generalists both have their place in the industry.

However, I'd like to offer a counterpoint. There is no harm in specializing in a stack, but it's generally a better idea to learn everything you can. By broadening your knowledge, you get a better understanding of the whole system when presented with a new project. This doesn't mean you can't specialize while being a generalist.

When you have a broad understanding, you can avoid blind spots and pick up new things more easily. This holistic approach can make you a better developer overall. You still have the option to specialize deeply in one area, but the general knowledge helps you understand and integrate different parts of the system more effectively.

Ultimately, it's about balance. Specializing can make you an expert in one area, but being a generalist can make you a versatile problem solver who can adapt to various challenges. Both paths have their merits, and the best choice depends on your personal goals and interests.

Collapse
 
elsyng profile image
Ellis • Edited

As I said, I've seen a number of truly awful frontends inside (the code) and out (visuals), created and passionately maintained by fullstack devs, and exactly because they are generalists as you call it.

Say we're building a ship. Oh, wouldn't it be nice if the same guys who build the engines also design and build the upper decks. Two for the price of one. Right? 🤑 You pay one person to do both jobs...

No, you cannot have your cake and eat it. To specialise, you spend a lot of time, you build a lot of experience. Some people think a fullstack developer is a frontend developer + a backend developer, all in one: that's not correct, imho.

Say, you get the same application built twice: once by 2 generalists (2 fullstack), and once by 2 specialists (1 f/e, 1b/e), with the same time and money. I think the immediate quality of the result as well as the maintainability (=long term) will be significantly different.

((One specific example I'd like to give, which I think happens in so many projects run by "generalists": because they don't have enough skills and experience in, and they don't feel comfortable enough with, HTML and CSS (and Javascript perhaps), they turn to using 3rd party UI utility libraries instead, and end up with lower quality code, visuals, performance and maintainability. Which is probably a somewhat contraversial claim.))

Perhaps we have somewhat different experiences and views there... which is a good thing 🙂

Collapse
 
ruthtempo profile image
Ruth

You are so right! It is good to know a bit of everything, so that things don't sound too foreign but also good to have a specialization, to have a skill that you really can do well and put time and love on it, and not just doing things half way because you have to do front end, back end, and other things at the same time. the result can be a blob

Collapse
 
rampa2510 profile image
RAM PANDEY

Just found this blog that emphasises on the points about tinkering and generalist linkedin.com/pulse/common-trait-ac...

Collapse
 
jayrald07 profile image
Jayrald Empino

This is so direct. Thank you for this.

Collapse
 
at-the-vr profile image
Atharva

the prime's video you have linked is going to youtube's history feed 🤓

Collapse
 
rampa2510 profile image
RAM PANDEY

Thanks for the correction

Collapse
 
boby_tiwari_fd03ffa35b156 profile image
Boby Tiwari

👏

Collapse
 
beme08 profile image
Shkumbin Sherifi

"recently watched a video of ThePrimagen hat inspired me to write this blog." *that

Collapse
 
rampa2510 profile image
RAM PANDEY

Thanks for the correction

Collapse
 
m_idrees555 profile image
MUHAMMAD IDREES • Edited

Perfect....!
I got a lot of tips & guidance in this post.

Collapse
 
muhammadanas8 profile image
MuhammadAnas8

Thanks for sharing.

Collapse
 
mellis481 profile image
Mike E

"Own the product, not just your tasks." 👍

Collapse
 
martinbaun profile image
Martin Baun

Great post.

I must say as a founder and lead technician I started making fantastic products when I practically forced myself to start relaxing and taking intentional breaks.

Collapse
 
eduapps profile image
Eduardo P. Gomez

Thank you, Mr RAM. I just need one more of you to complete my setup

Collapse
 
jangelodev profile image
João Angelo

Top, very nice !
Thanks for sharing

Collapse
 
oradev profile image
Abdul-Rauf Omotoso

Nice post

Collapse
 
rampa2510 profile image
RAM PANDEY

Thank you

Collapse
 
seru01 profile image
seru01

Thanks for sharing,
It's inspiring specialy for junior like me, i also developing products for the company I've been working and loving my work, provides me new ideas to develop my own products.

Collapse
 
anipy profile image
Aniket Ambore

Nice post man. Thanks for sharing it.

Collapse
 
rampa2510 profile image
RAM PANDEY

Thank you

Collapse
 
shaddaidan profile image
SHADDAI DANIEL

beautiful, concise, and very important post. thank you for sharing.

Collapse
 
arashjp8 profile image
Arash Jafarpour

Love the post it was a good read you should think about putting your stuff in prime's subreddit for him to react to it. Wish to learn more from you 👊🏼

Collapse
 
rampa2510 profile image
RAM PANDEY

I mean it would be very shameful of me to put my blog on primes subreddit people should find it valuable and share, if they find it valuable.

Collapse
 
mongezi_kasha profile image
Mongezi Kasha • Edited

Great insights mate

I feel like when starting a Software development Career it's very to crucial for the first few years of your career to be a generalist by that I mean from your years of being a junior to an intermediate and then when you are at a point where you can spin up an entire project by yourself, then you can find a field to specialize on.

Whether you are a front-end, back-end or security engineering specialist you need those years of experience where you were just learning everything. I think engineering wisdom a portion of it comes from that. Great stuff

Collapse
 
77pintu profile image
77pintu

Thanks, for the great post

Collapse
 
siddharth_singhtanwar_6a profile image
Siddharth Singh Tanwar

I agree with every single point. Great Insights!