I think it a lot more nuanced than that. People that go home to work on github repos that are essentially just copy-pasting from HackerRank are not doing themselves any favors. I mean, sure, their repo looks better to HR drones. If that is what they are worries about, no problem.
But if they are really trying to get better, then they have to do 'deliberate' practice. Just grinding through things isn't the end-all-be-all. You have to really be trying.
I know that's a bit glib, but I think that there has been some good work done in this area of 'deliberate' practice recently. Cal Newport, Dan Coyle, Josh Waitzkin, Tom Sterner, and others have written a fair bit about the deliberate part.
> But if they are really trying to get better, then they have to do 'deliberate' practice. Just grinding through things isn't the end-all-be-all. You have to really be trying.
Not only that, but the types of coding you can do at home are often much different than your work. Most hobby projects won't give you a chance to process terabytes of data or serve data to hundreds of millions of clients or send bytes across the country with microwaves. So if your job is related to any of those things, you're not going to improve much at home.
Also, much of what companies value in software developers isn't raw coding ability. You have to be able to work with other people, understand business requirements, convince people to help on your work, etc, etc. From that perspective, somebody who spends their evenings at bars talking to strangers might be building more important career skills than the person who codes all night.
> Not only that, but the types of coding you can do at home are often much different than your work. Most hobby projects won't give you a chance to process terabytes of data or serve data to hundreds of millions of clients or send bytes across the country with microwaves. So if your job is related to any of those things, you're not going to improve much at home.
Then again, most jobs won't give you that chance either.
It can be that coding hobby projects can be your only chance to learn how to write good, readable, maintainable and performant code. If your job involves churning out features for customers or closing tickets, you will not have time for anything other than "your best under time pressure". Hobby projects can give you opportunity to improve the quality of code you produce by default.
But if they are really trying to get better, then they have to do 'deliberate' practice. Just grinding through things isn't the end-all-be-all. You have to really be trying.
I know that's a bit glib, but I think that there has been some good work done in this area of 'deliberate' practice recently. Cal Newport, Dan Coyle, Josh Waitzkin, Tom Sterner, and others have written a fair bit about the deliberate part.
A good intro with good sources is here: https://jamesclear.com/deliberate-practice-theory