Here are 5 things I hoped I knew from the beginning:
1) No matter how fancy or popular a new framework or library might be nothing can beat vanilla/simple javascript. Always solve a problem using best possible and efficient approach and not simply by simply following new framework or libraries because they go out of date quite often or npm modules undergo breaking changes most of the times. It is better to keep modules up to date and code maintainable rather than trying to fix bugs at last moment.
2)It is always better to release build to QA or production in the middle of the week rather than delaying it till Fridays and spending your weekends at office.
3)You need to be up to date about latest syntax,features and libraries. So following relevant technical publications on medium, glancing through questions on quora, joining relevant technical groups on facebook and even opening hashnode feed daily or once a week can help you stay relevant on variety of topics.
4)Never try to multitask unless and until you can do it effectively. It is always better to stay focused on one problem/module at a time rather than trying to do many things simultaneously.
5)Every programmers has some "power hours" in a day where they have maximum focus and can be most productive. Some might be night owls and others might be early risers. Irrespective of the times try to figure out solutions to complex/difficult parts of your projects in this hours and then do menial tasks like attending meetings, interacting with team members and other trivial programming tasks later.
Focus / Specialize now. Generalize later.
I am still struggling with this as I want to know everything. Don't bank on Elon Musk succeeding with Neuralink any time soon.
Most answers here are what I would echo, but I'd add one big one:
SECURITY
As a web developer, you MUST think like a criminal. There's no way around it. It's a necessary evil these days.
Tommy and Marco have covered most of the points I wanted to mention. However, here are a few learnings I want to highlight.
today's trendy library often turns into tomorrow's technical debt: try to build projects as lightly as possible
do things correctly the first time, because you wont be coming back to refactor it later like you plan
be liberal when forking, backing up, and saving copies of your work — disk space is much cheaper than labour
you learn more by building 100 tiny projects than 10 large projects, repetition reveals patterns and teaches skills faster than the size of the projects
there is no end to what you can learn about web development but your lifetime is finite, to stay on top of your skillset you must learn to stay focused
In a more general sense:
As a backend programmer:
As a frontend programmer:
I can go on but I already cheated with categories ;D ....
j
stuff ;)
Hugo Mota
Code Hero