Do you typically learn new things through new on-the-job tasks and needs, or is it spare time and interest-based?
For further actions, you may consider blocking this person and/or reporting abuse
Do you typically learn new things through new on-the-job tasks and needs, or is it spare time and interest-based?
For further actions, you may consider blocking this person and/or reporting abuse
Yan Levin -
Pachi 🥑 -
Jenna -
krishnaa192 -
Top comments (30)
I always try to learn new tools in a self-directed way. Learning something while in a on-the-job project can be exhausting, frustrating, despairing, rushing.
Learning new tools in time that is not for our main job releases the burden of a deadline and is more enjoyable as I can try and break as much as I can with no consequences.
I do this for programming languages, frameworks, libraries, even SaaS tools
I think I can learn in both ways, but with job-related tasks, I can add to myself a deadline and I'm more productive when I'm under pressure. I'm lucky to have worked in environments where people encourage you to try new things. I have been working with technologies I didn't know before, it's quite challenging but at the end it's satisfactory.
I feel pretty similar. The pressure of the job situation definitely helps hasten/ensure my learning.
Learning off the job and going deep on something out of interest can have a different type of satisfaction though.
It depends... as always when I'm in a job I enjoy I tend to learn a lot about the current tech stack I'm using but if the job is not that great or very frustrating I tend to look for other tools, stacks, languages what I think it could give me my next "big thing"
I believe the job dictates a lot of what you learn from time to time and also can give you a direction, especially at early stages of your career. That's why I believe mentorship from senior members is essential.
Most of my career I had seniors that gave me directions (in different ways and manners), but most of my learning was made in spare time with community members and tech study groups.
For me it has always been in my spare time. In 3 companies, I had no choice for the web app we produce.
In my current company, I only had the choice for some satellites web apps, that are by definition not needed to run the company, but great to have to improve the productivity. Not to mention this is where I had the most fun and learned the most as I could apply what I learned in my spare time!
When I first started working, it’s mostly on-the-job. But later on, through curiosity, I tend to read articles or go through courses in my free time.
I’d say it’s a mixture of both nowadays, mostly through curiosity.
What my company wants:
The Microsoft band wagon is a long one. The whole company uses C# with .Net for the backend and Angular for the front end. Databases uses SQL with SQL Server management studio(microsoft), Visual Studio Enterprise(Microsoft, but it is actually really good), Azure DevOps(Microsoft), the list goes on...
What I want:
I ❤️ Javascript and believe that if your front end code base is primarily Javascript and you are trying to avoid a gigantic code base, then it only makes sense to write your backend in JS (Nodes JS and Express JS). However, most of the applications I deal with at work are enterprise applications(not to say that Node and Express can't handle this workload, I know there are plenty of successful companies who use variations of the MERN stack) and are heavily coupled with existing systems that are written in C# and .NET
However, it pisses me off when I have to prototype a new product or app quickly, I have to use their stack (C#, Angular, .Net, SQL). Do you know how long it takes? ....A day up to a week depending on the complexity.
I understand where they are coming from, most of their developers are fluent with .NET and Angular, and they want to eliminate any barrier that might interfere with productivity, such as a new framework or language. But do you know how much time we could save if you let me write it with a simple express backend and React for the front end? (managers: ...ignore...)
Over the past couple years, I have taken my frustration out my learning as many JS libraries and tools as possible and building as many apps as possible. When I am done with them, I list them in my resume.
During an interview:
interviewer: What did you use?
Me: MERN
interviewer: How about this one?
Me: MERN.
Just self-direction, trying to be better one line of code at a time. Spare time now more than ever because of the covid19, on the job is difficult because they see learning as a waste of time, because we never have time even for planning.
It's really a combination of the two. As I'm the lead developer, I dictate what we'll use to solve a problem. So this could be a new technique or even a new language. It really all depends on what the problem is and what the best way to solve that issue is. I can push my own agenda a little though. With a recent issue, we needed to speed up a script by a lot and there are several ways to do this. I chose to use Golang. Because it solves the problem and because I wanted to learn it.
In my own projects I usually go with something I already know, because I want there to be as little friction as possible. I do my best not to give myself the opportunity to say: "This is too difficult, I quit". That's much easier to do for your own projects. I do however use all of my skills and build it "properly" from the start.
I find myself to be relatively self-motivated for things that I am interested in.
However, I'm also unaware of a lot of cool technologies out there that I would want to learn if I only knew about them. The industry moves rapidly and there's only so much that I can detect on my radar. Because of this, I noticed myself getting motivated a lot by talking to my coworkers and just seeing what they're up to. I'm blessed to be working with a group of engineers that have a wide range of skills and knowledge that I don't have.
I've worked in mostly agencies the last 4 years so a lot less red tape, but also a lot less process overall. So you can pick whatever you want, but the responsibility/risk is all on you if it doesnt work, works less efficient...etc. So it teaches you the value of sustainability vs shiny object syndrome at times, and others its cool, I was using React Hooks in code soon as I got the hang of it. Just started writing them anywhere I could in new code especially. But had something went wrong with that? It would've been all on me.
For us, it is all about the project. If we are editing an existing system, obviously the choice is already made for us. We LOVE the projects we start from scratch and have full decision making around technologies.
I use whatever tools I can that feel helpful to me. Last year I took up IntelliJ over Eclipse and then VSCode over Notepad++ both changes are a big win. I wrote more in depth notes previously.
What Text Editors Do You Use?
Corey McCarty ・ Feb 7 ・ 3 min read
These wound up coming along with Markdown adoption discussed here:
Using Markdown for Notes
Corey McCarty ・ Jan 13 ・ 3 min read
With the work from home stuff currently, I've been bound to a remote/virtual dev environment without install privledges. This has led me to use Eclipse (which I've come to loathe) while VSCode is available.
I try to do learning as I'm doing work tasks. If I have down time, then I'll work on learning something unrelated. When I learned Markdown it was so that I could consolidate my work notes with multiple languages inline. I've picked up Groovy to work on Jenkins pipelines at work. I actually track my things to learn in my bullet journal so that I might weigh the different things as I go. I wrote about that as well.
Always Be Learning
Corey McCarty ・ Mar 20 ・ 5 min read
I use spare time to learn whatever I’m interested in and to document it on my YouTube channel. My day job I work on infrastructure and I’m currently using my spare time to learn about serverless.
Personally, it's largely self-direction. I feel like always learning what I need to do for my job burns me out. I'm at a level where I'm quite comfortable with what my job is asking me for, but I don't have very large breadth of knowledge outside of 1. webdev or 2. infra engineering.