"You need to code in your spare time to be a good developer" - I've been hearing this all the time during my career. When I had just started, I hea...
For further actions, you may consider blocking this person and/or reporting abuse
Great advice, I feel guilty when my coworkers are working (sometimes) till 10 or 11 pm. I don't know what to do 🤷🏻♂️ . I literally feel like I am not in the discussion of some decisions because they are taken out of office hours
I think that's different. That's an indicator of a toxic work environment.
If you're staying up to 10/11pm working on a side project that isn't work related, no problem, do that.
But if you're staying up to that time doing work for the company outside office hours, that's a problem. For one, you have an issue with burnout. Two you have , like you said, the problem where decisions are being made behind closed doors, because they're happening at a time when noone else is around to weigh in.
That alone can lead to bad practices slipping into the codebase and work environment.
I wouldn't say it's a toxic environment as my friends are too passionate and putting extra effort, which will save me and others time for other tasks.
It may save you time now, but it can come back to bite the team later.
How do you guys work out estimates?
It'll take x number of days to get User Story A done.
But wait, a "day" of work should be 8 hours worth of work, or something to that extent. If your team mates are working 12 hour days, then the concept of a piece of functionality taking a day is askew, and it could lead to incorrect estimations and increased stress when deadlines roll round.
"You said it would only take 2 days to get this feature finished, 3 days later and you're still working on it? We need to ship it out today!"
2 days of work for your team mates is 24 hours worth of work, but for you it's only 16 hours.
Another problem is the "expectation" that your team mates are working ridiculous hours to get work done, and when that's done it'll be expected for them to do the same for the next piece of work, and the next piece.
Then you can get a resentment building in the team.
Why are we constantly working 12 hour days when the other people in the team are clocking off at 5pm?
Or worse, others on the team start to feel like they need to start working longer hours because they feel guilty for not doing it as they "aren't being team players".
Part of our job is proactively managing expectations to allow us to continually and consistently deliver work and value for time.
Working till 10/11pm doesn't mean that you're productive. Even if you're productive, it doesn't mean you bring value to your customers.
Our goal should be to be more efficient and to bring real value. It means doing more in less time. This myth of "I work longer so I'm more valuable" is total crap, leads to bad quality, bugs, unhappy customers and mental problems.
Our job is to automate things, for us and others to have more time, not being a code monkey for 10 hours straight.
I'm with you, and every other reply so far.
Nope, it is not a requirement, and in fact if it's stated as such by an employer during the interview process, thanks, but that job is not for me.
Companies/CEOs/CTOs that demand a passion for coding outside of working hours is simply an old mindset.
Sure, I write code at home, and don't earn an income from it, because I'm passionate about it. But if you require me to do so, then our views aren't aligned & I wish you luck with your business.
This sums it up perfectly. 💯
Great article, mate! Why is it only in this industry we hear stuff like this? When was the last time you heard this from a plumber, a creative director, a bank manager, a cop, an airliner pilot, a dentist, a journalist, a musician, a car designer, a team manager, a writer, a social worker, a secretary... I could go on but I think you get the point. They all take time off at the end of a normal work day, yes, 8 hours and not a minute more.
In other words, with only 8 hours to sleep, 8 hours to work, and 8 hours to commute, prepare or eat meals, and spend time relaxing, the question is:
Do you live to work, or do you work to live?
So the IT worker's life is just plain nuts in those outfits that think putting unreasonable demands on their staff is, well, reasonable. Something's very wrong here.
Unfortunately, when you put this discussion in the wider context of competition with, say, China, where the wo/man power outnumbers the West by a factor of a 1,000 if not more, you start to see we got a problem as it is not possible to compete successfully anymore. Unless we could get some AIs to do all the work for us....mmhh....food for thought.
I don't know about you, but if my brain surgeon, or even my GP hasn't taken any initiative in the past 20 years to read up on their specialties, since graduating and going through residency, that is going to worry me a lot.
Nobody is going to sit in their appointment with their GP, while they read published papers or practice a new technique (or new to them, 30 years into their career).
Somebody needs to be the "first" for that doctor, of course. But hopefully not with a scalpel in one hand and the journal in the other, with 0 prep time.
Likewise, if you are writing the code for a pacemaker, or a bank login, laproscopy arms, self-driving vehicles, or aeroplane pitch autocorrection, I don't want those things to be your "first time" while you are writing the production code.
Does that mean that I think people in those positions should be cramming all night, after a 10 hour work day? Not at all; I think that companies should have enough runway to support learning during the workday, and should be offering mentorship and apprenticeship models.
But, in the human-wellbeing spheres, where companies are clearly not providing that atmosphere, I do hope that there are some developers who do the responsible thing, and research the knowledge gaps of their teams/themselves (while also advocating for the wellbeing of the team and the consumer).
I don't want "I don't know what I don't know" to be the reason for reading about "this is how I learned that we shouldn't just throw an exception in a pacemaker" or "now I get why TLS and intranet are important for bank accounts".
I absolutely agree with you, critical systems should be done by people with knowledge and experience. I like your analogy with doctors, but there is the difference between doctors and developers - developers do have time to learn even during working hours. And unlike doctors, we can ask for a code review, or just ask colleagues to help if I stuck somewhere.
Besides that, I could be incredibly naive but I think that modern companies can not just stay in "no support for learning" approach. Those companies should do something about that to stay attractive for developers. I believe that we live in a time when we can choose the environment where we want to work. But, again, I can be wrong here.
In an ideal world, I completely agree with you, and that is how everything should work.
I can say, both from my experience consulting, and through helping friends enter the industry recently, that we don't live in that world. Not everywhere, at any rate.
Boeing didn't need experienced developers, because their codebase was so mature...
(not a joke).
Some too-big-to-fail consultancies start by signing contracts, and only interviewing to hire after the ink is dry.
And not just for general consumer websites and admin panels, but for anything else they can put programmers on.
Even if a company wanted to do the right thing, if they were entering a new space (let’s stick to pacemakers, just as an example), they have a bunch of devs that have a bunch of experience with high-level hardware, say...
...but none of them have any experience with medical devices, regulated devices, or mission/life-critical devices.
These people not only can't ask each other for code reviews, they don't even have enough knowledge and experience to hire the correct person to be able to do so.
And the management might assume everything is fine, because the regulators will make sure it's safe... in a lot of industries, though, regulators just check your documentation and approve things based on how similar they are to things that have been done before. Rather than being the pinnacle of excellence in that domain, they likely don't have any hands-on software/hardware experience in it (again, see Boeing).
And so it is, when you have consultancies asked to come in and be experts at something they are good at, but touching some completely novel domain...
...or when you have expanded too quickly, with a lot of new developers, in a tricky domain, and have also burned out (or laid off) your experienced developers, so nobody is left to course correct. Or the ones left are unfortunately antisocial or overwhelmed.
Also, given recent events, there is a lot of competition for a reduced number of roles. At least around here, and so a lot of people are being asked to take a lot of responsibility with no safety net (because there is none the employer is willing to give). Much of me wants to say "just let it fail and they’ll learn their lesson”. And then the other part of me thinks about what that means for planes and pacemakers.
Not suggesting any of this is good, or right. But it's also not a solved problem.
Thanks for such a lengthy response. I liked both the original article and your article!
@seanmay (I couldn't reply directly to you due to threading in dev.to)...
I work in a heavily regulated environment - to be able to conduct a sensible code review, you don't need specialists - you just need people that will be honest.
I'm the most senior person on my team, in many ways (length of time for the company, length of time in the language, most responsibility yadda yadda yadda). I'm not, however, infallible. I'll happily have anyone that can just about read the language and still has warm blood critique my code.
End of the day, if a senior looks & spots a bug, great. If a brand-new-first-week-on-the-job junior looks at my code & doesn't understand what it's doing, I've done something very wrong & it needs re-work. I want them to tell me they don't understand, so I can re-write it and I can help mentor them if that's appropriate. Or they should be questioning me on why I implemented the way I did.
If the same junior reads the ticket I'm working on, and doesn't understand it, then we all did something wrong during Sprint Planning, because we accepted a ticket that couldn't be "picked up by anyone" (caveat, if all they need is a domain specific dictionary, that's fine).
To go back to your medical analogy for a moment - I'm perhaps a little strange. A while ago, I went into hospital for a scan on my shoulder. Being that there's nothing particularly hard for the CT to see, they had to inject dye. Right into the middle of my shoulder. They had a student doctor on duty, and asked if I minded. Before I replied, she said she'd not done this exact procedure herself before. "Sure, you've got to start somewhere... if you're confident enough to give it a crack, get on with it."
25mins later (for a relatively straight forward injection) she's still poking my shoulder & rummaging around. Then she says that she needs to go get someone else, because this isn't working the way she expected. More experienced doctor comes in, 30 seconds later, job done.
She couldn't apologise enough, but as I see it, she was a junior trying her best, and she asked for a peer review so she could learn. Can't ask for much better than that, and I'm sure she won't want to make the same mistake in future. (turns out, I have a misaligned A/C joint)
Doctors have well defined CPD, they also have one of the longest working hours and some somehow cram in even more work, they certainly get some time paid for the CPD and research.
I work in healthcare development, currently get a day a week for training, other local based companies do similar.
Theres much more important things in life than work, it only really exists to keep you in food, warmth and shelter.
But if your fun is coding, great but it wore off in me when it became work, riding my bike, walking in the hills and interacting with people from different backgrounds is more my thing.
So I'm totally with this.
You just have to know what you expect from life. It's not about the wider context of competition.
I personally want to spend more time out of computer after my 8 hours.
As he said, I love coding but my work/life balance is important. F**ck the competition.
If it's hackathons, okay. If I just want to compare to others, not for me ego but to know if i'm still up and up to date, okay.
My actual job enabled to take days off something unbelievable from what I've seen in the companies in my country and everytime i take some vacations and when i come back my productivity is boosted
These other professions do require extra work (maybe not a secretary) and a constant pursuit of knowledge and skill, but it might just be invisible to someone outside of that profession.
Maybe the question is what does that extra work achieve? How is it recognized on the job? Seems like maybe the author is saying if that extra work isn't reflected back on the job, why spend time on it. Maybe what he's looking for is the opportunity to learn and apply knowledge at work. Does the employer pay for conferences and classes, etc?
Some employers are not convinced coding is real work. I've always avoided such workplaces.
I've done a bit of full circle, used to be a dev, went to be a teacher, then came back.
the expectation in most careers is you "do a little more". Teachers work until 9pm most nights in term time and then at least a few hours every weekend. yes we got ATTO (all that time off), but we took work home with us to do in that time (in my 6 weeks holdays, i used go back to work after week 3).
I think most careers where you are well paid there has to be a little bit extra, where you keep up skilling with trends, but over time that becomes less.
first time as a dev, i used to spend my nights reading and practising CSS/PHP etc. but over time that got less so i didn't have to slog it out ever night (which is the same in most sectors as you get more comfortable in the job). as the author suggests he's a Senior, it would be expected he has mastery over the tools, now it would be less work to keep on top of the skills.
as some have mentioned - it's a work-life balance, but there will always be an expectation to put in "a bit more" in your free time.
I'm a Senior Developer, my partner is a High School Teacher.
She has a degree, and teaches 3 subjects to classes of 30 or so kids, at GCSE level. I don't have a degree. I paid more Income Tax this month than she received Net.
Don't even get me started on the types of behaviour from the kids (and parents) that she has to put up with, as well as working weekends/school holidays, sleepless nights worrying about the vulnerable kids in her form group that she knows Social Services have been to talk to at home etc...
I clock off at 4pm, and with the odd exception of major incidents, don't do anything that my employer isn't paying for (or giving time in lieu etc).
In some professions, such as Teaching, sure, they expect you to care about the kids... and you can't exactly mark homework while teaching a class... Some might say that 9-3 allows you a few hours per day to do the work, but then what about Teacher Training sessions? What about the parents that want to report the fact their child is being bullied to you? Similar applies to Nursing... are you really going to let someone die just so you can go home & feed your cat on time? Probably not... Would a Priest kick you out of a confession because the soaps were on TV?
Then there's development... sure, I write code in my own time & don't earn an income from it. Sure, I keep up with trends, which thanks to Google Now is a matter of unlocking my phone & swiping left. Sure, I think about architectural patterns etc in the shower.
But, other than me being slightly more productive in work, nothing I do in my spare time directly benefits my employer.
I think the difference is a job vs a Vocation. Software Development is a job you get because it's relatively easy & keeps your cat getting fed. Teaching (etc) are Vocations, that you get into because you want to make a difference to other peoples lives. No-one will die if I don't write 30 lines of code today.
Teaching, as you likely know all too well, is definitely not well paid. Maybe some got suckered in on a bursary, but the difficulty of the PGCE will quickly turn them into drop-outs.
as an addendum...I will say....I never worked as hard as when i was a teacher. Dev-ing is about self motivation and self-study. Teaching is constant and if it doesn't get done, there is trouble + all the additional stuff you have to do to keep on top of it.
Work is work. My free time is mine. I don't work on work in my free time. (See my response in the dev.to/sloan/why-i-left-3-consecut... post.)
My hobbies are... well... programming. So I'm in that category of folks who do programming for fun and leisure. Guilty as charged.
But my coworkers have other hobbies that they engage in. To name a few: golf, running, exercise, car mechanic, photography, astronomy, painting, standards committee, or forensic criminal investigation. And they're all fabulous developers.
No! Maybe in the beginning when you're just getting into it and in full "learning mode", soaking up knowledge like a sponge. But once you're employed and busy fulltime at least 40 hours per week (likely more) then why would there be a requirement to do coding in your spare time as well? There's that thing called "work-life balance", spending time with family, sports/workout, recreation, hobbies, there's more to life than coding :-)
I think the biggest argument for coding in your spare time is the willingness to better yourself. That's why I do it. That's why recruiters look for it. To say you are never going to do it because your life experiences are more important in my opinion puts up a big barrier to your own personal development. If you don't have time make time. Unless of course you know everything you need to know already. Or work for a company who is prepared to allocate and therefore pay for personal development. Not everyone works for a company with that luxury.
True and agreed, up to a degree - if you think it's important or even necessary, and you enjoy doing it (that's important I think) - yes, then by all means go for it - but only if you think that it's valuable and important for yourself, not because someone else says so.
Nice article and nice points in the answers overall. Here are my 2 cents:
Very nice 2 cents :)
I agree with it, yes. It depends on your goals and dream, I believe. Let's say, what if I want to grow in the management path? Then perhaps I would need to read and learn quite different things, but not coding.
Of course, when you code after working hours - you can reach some goals faster but it's so subjective, everyone has so different pace and skills. I simplifying it but someone can learn and start to use some technology in few hours but someone else needs few days. And that's fine, we are all different. I know really great developers who don't code after working hours, but they have actual and modern knowledge.
If you wan to grow as a technical manager (out of hours) the way to go is around the lines: reading managerial oriented books, reading about soft skills, try to exercise by building trust and good communication with others etc. Thats why I mentioned that it is not necessary to code, you just need something that makes you better at your craft.
Thats feasible, of course. Usually those people have built already diverse experience and can grasp new concepts faster than others or work to companies where they do continuous learning as part for their jobs (eg early startups)
Same goes with the "just learn one language" mentality that is emerging. You might never need half the things you learn at the university, but if you need to "grow" (eg become an architect, so you need to be well rounded) you will eventually need to catchup with the reading.
Good article, though at the end of every interview I've led, I always ask if the candidate enjoys going to Dev meetups, or has side projects. It doesn't matter, but I love seeing general enthusiasm for their craft. I've worked with developers who admit they "just feel in to it", and it generally showed in their work...
Sure, I'm 100% agree with you, I also enjoy visiting meetups or conferences. But it's slightly different I think, I can visit these events for different purposes - education or just networking. But I do it because I want to do it, not because someone expects me to do that.
I agree with you. Personal life is more important than work. I love what I do (I’m a developer, too) and I spend my spare time coding and deepen my knowledge. So, in my case, passion and work go hand-in-hand. But even under these circumstances, I want that after 6PM I do what I want. That “what I want” will still be 90% related to development, but that must be something I decide.
My current theory is that while you don't need to actually do anything hobbyish outside of work hours to be a good developer, you DO need to be curious about code and what you can do with it to be a good developer, which for many people will lead to coding in their own time, but it is not the coding in your own time itself that is beneficial. I think that without curiosity, the return on investment for learning new technologies, languages and techniques is far too delayed for any human to be good at it, with curiosity there is instant positive feedback on this exploration that translates to much more knowledge and much better thought out code over time.
Really interested in what other people think of this!
Great comment.
Thank you for this great article! I’ve been just hired for a new position in a big company as a Software Engineer Intern. Although I’m sure in the next few months I’ll fully commit myself to work as well as I possibly can I extremely value myself as a person thinking that my well being is automatically applied to other’s needs. This way I couldn’t agree with you more. Think about the time you spend in your life with people you love. Why did you choose to commit yourself to do hard work all day long? I want to be a great person, father, spouse. Whatever goal you have it’s always connected to other people in your life. Take your time to stop and appreciate every second you can spend with the one’s you love.
I'm often working at home on personal or open-source projects because I love that.
Some of my dev friends stop coding once they pass their office door, and, yeah, I understand it !
We're all human, a job is a job, not our life !
You don't put that sort of pressure on other jobs so why you do it for devs ?
You won't say to a HR (Human Resources, I don't know if we call them like that in english) to work from their home to be a good HR... It makes no sense why it does for a dev ?
If a dev don't work at home, it doesn't mean he's not a passionate. Even footballers don't do football on their spare time.
Personally, I am very passionated into the open-source world and I can't afford my time for it during my office-time since "it's not my job". So I did it at home when I don't have anything else to do like, you know, social things for example.
Passing my own office doors, "code" and "dev" is not anymore in my language when talking with people even with devs-one (except in a meetup or when coding at home ofc).
Great article brother
Years ago I was in the middle of that rush, just code day and night though I get to know lot of stuff but it doesn't make any sense, there was feeling of void inside which in turn decrease my productivity.
After sometime it feels like burden to me as a result I stopped coding for almost 1.5 years.
Last year I started it again but now I do coding when I feel it from my inside , created separate space for it .
Thanks for the article.
I've been coding professionally for nearly 25 years. I started learning 10+ years before that.
Every "great" coder I've ever worked with or encountered in the industry has coded out of hours.
Plenty of people play the piano, but do you think that the true greats only do it 9 to 5? Why would it be any different with the craft of software engineering? Work hours will take you so far. Weekends will take you further.
So, how far do you want to go?
That’s true, sure.
Of course, coding outside of working hours can take you further, but you really should want to do it - to spend your time to be a better developer. And it’s absolutely fine, my point is that you decide what to do - go deeper because you really love it (and then, perhaps, achieve results a bit faster) or just learn it with a different pace and different environment.
I also think that learning abilities depend a lot on personality - if working hours are enough for studying then it’s great.
I'm so glad I found this article. I used to be all about the "grind". Last year suddenly my mother got sick and passed after a long battle. Now I know better. There is so much more in life than just our computer. It may sound harsh or stupid to some, but tomorrow is not guaranteed. Do the stuff you really enjoy doing and find important. May it be coding to 10, or hiking or playing the piano. Don't judge other people based on their hobbies.
Thank you for sharing your thoughts. I think this is a really important topic not discussed often enough. 😊
Sorry for your loss and thank you for sharing your thoughts as well.
I also understand that I’m not a next Bill Gates nor I will create a new Facebook or some another huge IT company (but who knows though) and I’m fine with it. I would rather enjoy all different things that I really love and want to do.
Thank you. And I agree with you 100%. Who knows what will bring you in life. However, the only thing that matters today is that you do what you think is important today. And nobody can tell you otherwise.
This is a strange industry we have for sure ^^ This hustle porn feels really gross to me. You HAVE to code overtime to make it. Ew, disgusting...
Great athletes understand the importance of rest, so should we. I've always like the speech of DHH and Jason Fried from Basecamp about that. You don't need to work 12 hours a day.
I've realized quite some time ago that working 12 hours a day while being exhausted and burned out was FAR LESS productive than working 7-8 hours a day while getting solid sleep.
Good article!
Nope you don't really need to. You just need to document what you learn. That adds value to someone. Which you can show to the world to potential employers or developers.
Cause what they are looking for is that you have the trait of "self education" to hone your craft without just depending on the company to spoon feed you things.
There was a time I was coding days and nights, today I've experience to literally do everything regarding frontend/integration and what you described is happening to me and I sometimes feel guilty but I know that I just have to find another hobbies.
This is a really good roundup, thank you very much for writing it.
I think a lot of the expectation around this comes from the very earliest days of the web, where the Netscape team used to work all night in order to get features for new releases out quickly to keep up with demand.
At the time, web development as an industry didn’t exist and it was so new and exciting they just wanted to do that.
Now, the situation is very different, and we’ve gone from a handful of “enthusiasts” to a large group of semiprofessionals, the expectations should in my view adjust to the same expectations as other similarly regarded groups.
I rarely code in the evening. I do a lot of other things for fun in the evening : drawing, guitar, learning Japanese etc. I've never had an employer or colleague that prioritises coding in the off hours.
Hearing about companies that go out of their way to promote coding in your free time always sickened me. They are clearly not honest or realistic.
In fact, the only times I've stayed longer to finish something has always been because I was waiting for my friends to go for a drink, who were putting in more hours, or because I hadn't put the usual number of hours into work that day and felt guilty. None of my employers ever asked for timesheets. Trust and honesty from an employer goes a long way.
I feel the exact same way! I'm a software development apprentice, and trying to code in my free time absolutely burns me out. I spend every work day learning to code and trying to work hard. I want to use my free time to focus on other things I enjoy.
Thanks for sharing your thoughts! I completely agree with your opinions on this topic. I truly believe that your free time outside of work should be spent on a hobby, something not closely related to your job, or whatever that makes YOU happy. It's nice to know that there are others that feel the same way as I do.
Reading this on a Sunday morning really freshened me up. Thanks, Maxim! Like you, I'm passionate about UX/UI, coffee, and yoga. Unlike you, I am a freshly baked developer with a decade-old digital media background. After months of non-stop daily git commits and slowly developing signs of burnout and self-doubt, I feel grateful to have come across your article :)
Maxim, this is a great article and I agree with just about everything you've said here.
I will say that I think you're being a tad generous when you say that a refusal to hire someone if they don't code in their spare time does not mean it's a bad company. I think at a MINIMUM it is a serious red flag - an indicator that this particular company does not understand that there is life outside of coding. An indication that they want not human beings, but - as you said - "robots." You're probably better off being rejected by companies like this.
Again, great article!
Totally agree with you, Maxim.
We write code to make people's lives easier, to find real working solutions to their problems.
So we need to get some rest from work and live ourselves. If we don't do that, if the whole of our life is coding - we can hardly bring more value to people as we know not much about things except coding as we see the problem only one-sided way. Maybe I exaggerate here, but IMO this clarifies the picture.
I am a developer too :) n you have penned down that every feeling I have!!! We should do what we love...
Thanks for sharing...
I used to think that a side project was an absolute must in my life. I love to code as a hobby and for my job. And then my health started to dwindle and I was getting burnt out. I had no more motivation to do anything else in life, including coding. So, I totally agree with you that having a side project is not a requirement for success, nor is it a sole sign of passion. I read like hell in my free time about coding, it keeps my up to date and satisfy my interest. And most importantly, it doesn't burn me out.
I think the important thing about any side project is that it be personally enjoyable! I even went as far as creating The Cranky Developer Manifesto for that exact reason. Otherwise, as you said, you're at risk of burnout.
So if no side project is enjoyable, you won't benefit from having one anyway.
Great article and great advice , thx <3 <3
Nice article! I realized my life is more important than development. Can I translate into Korean? I wanna share this.
Yeah, sure, go ahead and translate it. I would just ask to put the link to the original article :)
I really love this post man! The way you have plotted all the points, it is so well said.
I got interested just by seeing your title, but lemme tell you the fact I didn't expected it would be this beautiful.
Amazing✨
Thank you :)
Loved the article and I definitely agree. I also think the time you spend doing other things besides coding helps your brain integrate information and rest so that, when you do return to your computer to code, you are in the best state to do so.
You said everything that I as a dev have felt over a period of 5 years and yet sound unoffensive. :) That's a real talent you got there. When I say it, it is thought that maybe I don't love development as much as I should which is crazy because I don't need to be doing something 24X7 to be good at it. Great post.
Thank you, I'm glad that you liked my post :)
I agree that you should not be required/obliged to code in your free time, that’s for sure.
If you work where you can learn new tools on company time (like mentioned in this article), good for you. If you are happy about your where you are right now (as in your programming skills, achievements, career prospects), you probably don’t need to code in your free time—unless you want to.
I had a late start into my programming career, have no mentoring or feedback system, and I tend to progress slower than (many? most?) others. Thus I need to work harder to catch up. “Work harder” could entail many things; for me it includes coding in my free time, which is very important for me.
That said, too much coding & not enough rest leads to burnout, which will be counterproductive to my goals. So I balance coding with social and community activities, and maintaining my mental & physical health.
Hi I'm totally new here in fact this is my first comment. I'm recently very interested in coding am learning JavaScript now (first week). I was thinking to change career path to become software engineer. but the thing is I have commitment so if I gave up the job now (self-employed roofer) to start to work as full time Dev my income surely could not match with my old income.
do u face similar issue? as u mention u staet ur Dev career late I thought maybe u can share ur experience with me. thanks!
I learned to code outside of my previous jobs, eg. at night or whenever I had time. Initially I did not even think about changing career; was doing it out of interest.
Gradually I started taking small projects as a side gig (setup & customize Wordpress sites for friends' small business; worked for super low rates on freelancing sites like Upwork and Fiverr)--so I was essentially learning while getting paid, albeit low amount. Only when I've saved enough backup fund and was confident I could make as much as my previous jobs from coding did I go to full-time coding.
However, at that time there was no bootcamp with income sharing agreement & job placement in my country. If I were in your position now, I'd probably consider this option.
thnak you so much for your sharing. much appreciated. :)
Technology is now advancing at a horrendous pace. If you're working at current employer on old technology, chances are good if you decide to go job hunting, that you won't find another job. Applying for job as a consultant / contractor who has to go to various clients with different technologies, is even worse.
This year many people I know including myself was faced with this dilemma. I had to upskill prior to applying for many jobs.
(Also, only few companies pay for upskill and/or allow upskill at work, the rest say they pay you to work, can't afford you to sit at desk playing with new technology).
Look at software development:
Jquery dying due to updated vanilla JS.
Angular dying due to React.
React Native replaced by flutter and xamarin.
React will probably be replaced by Vue.
New kids on the block are Rust and Julia.
Python and R had massive enhancements.
Look at mobile development:
Google announced Kotlin as an official language for the Android development in 2019. Kotlin can be used in front-end, back-end, and Android development.
Objective-C being replaced by Swift.
Look at data analytics:
Hadoop replaced by Spark.
Apache Pig replaced by Apache Hive.
On-premises data warehouse replaced by Cloud version (Azure, AWS).
SSRS (SQL reports) replaced by Power BI.
Machine Learning (ML), Artificial Intelligence (AI), Robotics, has had major overhaul the past few years.
I do think some employers make the fools' mistake of hiring based on the knowledge of a specific piece of tech. But do you really want to work somewhere that requires you to have 3 years experience in a 3 year old framework that, in turn, will go out of date in a few years?
Good place to work can be hard to find, but there are places out there that invest in their workers, and make sure they're kept up to date.
Yeah, and of course you need to stay up to date about current technologies and you cannot just ignore them.
However, it doesn’t mean that I need to drop everything and learn how to work with yet another shiny tool or framework.
I worked in different places where we had possibilities to try new things in production. Not critical projects but some proof of concepts were always good candidates to try different frameworks and processes.
And I’m not encouraging everyone to stop learning, not at all! We all need to continue to learn things, but I believe we should not sacrifice our personal time.
A horrendous pace?
.... I think it's wonderful and exciting!!
I can sit on my couch with a laptop and bring 1000 virtual machines to life for five minutes then click my fingers and they're gone.
This is now a digital world and we are as gods! Embrace it!! :-)
I think you're mixing up two independent things:
I completely agree that nobody should expect from you that you will be doing something related to programming in your spare time.
From the other hand, I'm pretty sure that even if you allowed (or even obligated) to spend some time for education at work, this is not enough to grow as a developer. It might be enough to keep you good enough to do your everyday job, but that's it. Such an education is too narrow and too focused on what you do every day. But to grow it's often necessary to dig into seemingly unrelated areas.
So happened that I've been in different situations through my career. At the beginning I've spent every single spare minute coding or learning something new. Then I had long years when I did nothing related to programming in my spare time (motivation was almost identical to described in post). That period ended once I've realized that I'm in fact stuck, whole industry is making a leap ahead while I'm still polishing the same few skills. Last ten or so years I'm actively working on various side projects in my spare time. Over the years I've learned how to keep balance between programming and other sides of my life, but still programming is not limited to the working hours.
How often was I able to find a solution to some problem at a completely random time while doing something different? Quite a lot of times!
What a brilliant words I've read! The whole post is gorgeous, but this particular quote could be the essence of it. Thank you, Maxim.
Great topic, great advise, and interesting discussion!
Lots of folks seem very passionate about their stance on this.
Coding in your free time is a requirement for being a good dev!
Doing work related things in your free time is bad for your health!
I've been on both sides. For many years, work related learning was my primary hobby. Did I learn a ton those evenings and weekends? Heck yeah I did! Was I maladjusted or burnt out? I don't think so. I'll even admit to being quietly critical of coworkers who didn't spend any free time in front of a computer.
Lately, I happen to spend my non-work time on other things. Am I a less accomplished professional for it? I don't think so, and I don't my team would say that either. Do I miss spending my free time working with technology? Yes, but I'm also enjoying my other pursuits.
I'm guessing that it is likely I will one day swing back to investing lots of personal time into professional related activities.
Different strokes for different folks. Everyone's life follows a different path. If a current/potential employer/supervisor/peer doesn't get this, find a different team!
This is so true. Very well written. Thanks for reiterating how important it is for developers to have hobbies and a life outside of coding. I sometimes have fallen into this trap of feeling like you must code everyday, all day. It's not healthy and frankly, its not necessary. Thanks once again for helping us to understand that it is OK not to code in our down time.
100% agree. I don't want to code more when I already spend 45 hours a week doing that already
The company I work at devotes an allotment of hours every year for learning. That's where I learn new stuff for coding, not at home.
uma ótima solução é lembrar que o desenvolvimento social humano, é complexo o suficiente para alguém ou um grupo humano defina como geral algo que é de desempenho pessoal, todos os casos são isolados, sendo generalizados para achar um padrão que não tem realmente, nunca ligue se todos decodifiquem em seu tempo livre, pois o que leva o desempenho individual é seu contexto social psicológico pessoal, você sendo bom no que faz não te torna menos especial do que os codificadores de plantão (hehehe), em resumo, não, realmente não precisa, sendo bom ja basta.
OBS: tradutores modificam o contexto dos meus comentários, DESATIVE!
I go in the coding as a hobby camp, but sometimes I get frustrated with myself that I didn't get any "free time" because I put that time into personal projects, home lab stuff, or potentially extra work from time to time. I say free time here, because maybe subconsciously I think my extra coding/learning is for self development and for work.
Then throw in making time for personal life stuff (significant other, chores, errands, etc). Trying to fit it all into one day is unreasonable and overwhelming. So it's hard to pick and choose what to do I think.
Semi unrelated, but maybe something to add.
I recall the early days of h1b visas. Young bachelor's from foreign countries would work 12 to 16 hour days. They were paid less but that wasn't the prize. The prize was a green card. We with families, couldn't compete and indeed there were a number of layoffs.
Since then the demand for software has grown exponentially. The best advice is to ignore shop talk and do what you want. If for example you have react skills you can go far with that... Who cares what the arrogant bastards are saying.?
After 15 years of experience as a developer and lead, I got to the same position. 8 hours a day is enough. The qualification is done at work time. Evenings and weekends are for the family and hobbies (model making). That does not mean I stand up and go after 8 hours - if its delivery day, I can do 10 hours or so, but compensate week later. If anyone wants the different, i go out of interview.
Though I agree with most of the points, "Good developer" is a subjective phrase. The discussion is inefficient if we are all talking about different kinds of "Good Developers"
For example, a good developer in FAANG vs a good developer in a local startup might have different standards. So, it's all about context.
Maybe we can dig deeper and think why we and other stakeholders under context need good developers. Everybody has their own agenda, how can we as a developer be valuable with the agendas? Upon reaching a balance point of these stakeholders can we have a more productive /effective output.
keep improving and keep bringing value to your environments, that's my version of good development.
It's a great article, and I totally agree with you. In my opinion it is very important to get some variety with your hobbies, maybe you will get some new ideas for your work.
Probably not, you need to code in a way that keeps you connected to it, if you love it, in a sustainable healthy way.
Your opinion really changed my perspective and helps me appreciate my current company better as it's a place where all employees are asked to leave as soon as the office hours end and discourages OT as much as possible.
I used to wish for a place in the office to continue coding and learning about technologies related to my job after work hours, but after reading your post, I think this could create a toxic culture for my colleagues.
True mate. There is no such thing as "spare time"! It's a ludicrous term.
Thank you! ☀️
Great post
There's life outside of coding? 😁
Awesome post, awesome advise and I couldn't agree more! Thanks for sharing this!
Awesome post, straight to the point. Thank you for sharing your thoughts and story about this!
Great read. 👍 ❤️
"I don’t want to miss really important moments in my life." - This sentence is a clou of this post. I totally agree with you. Good balance is more important then be a freak dev.
Great post! The one line I am taking away from it is "... life is short. I just don’t have time to do things that don’t make me happy or don’t move me closer to my dreams."
Absolutely agree!! Balance make us smarter! Life is not just work!
Great article!
Even believing that we don't need to code on our free time, its very easy to fall into this speech based on your co-workers, community or even in company culture.
Louder for those in the back! This was amazingly written, I agree completely.