DEV Community

How much does your job dictate what new tools you learn vs self-direction?

Ben Halpern on April 08, 2020

Do you typically learn new things through new on-the-job tasks and needs, or is it spare time and interest-based?

Collapse
 
cescquintero profile image
Francisco Quintero 🇨🇴

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

Collapse
 
elisealcala profile image
Elizabeth Alcalá

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.

Collapse
 
ben profile image
Ben Halpern

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.

Collapse
 
tunaxor profile image
Angel Daniel Munoz Gonzalez

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"

Collapse
 
guivinicius profile image
Guilherme (Harry)

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.

Collapse
 
anwar_nairi profile image
Anwar • Edited

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!

Collapse
 
thealiilman profile image
Ali Ilman

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.

Collapse
 
htnguy profile image
Hieu Nguyen

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.

Collapse
 
jizavala profile image
jizavala

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.

Collapse
 
roelofjanelsinga profile image
Roelof Jan Elsinga

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.

Collapse
 
namuny profile image
Daniel Kim

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.

Collapse
 
ganonbit profile image
Andrew Reese

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.

Collapse
 
lehmannsystems profile image
Mike

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.

Collapse
 
xanderyzwich profile image
Corey McCarty

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.

These wound up coming along with Markdown adoption discussed here:

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.

Collapse
 
madebygps profile image
Gwyneth Peña-Siguenza

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.

Collapse
 
mburszley profile image
Maximilian Burszley

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.

Collapse
 
jonnyeom profile image
Jonny Eom

I hear about the new technologies and its uses / benefits on my own.
But I usually find myself not wanting to dive in deep with the new things after working all day.

Over time though, Ive been able to slowly suggest the new tools on-the-job as possible solutions. I find that many people see these different solutions intriguing and they often are just as excited to try out new things.

Collapse
 
clara profile image
Clara

I am in the fortunate position to only work 3 days a week (freelancing). The other 2 days I dedicate to learning new tools/technologies and skills. I only have done this for two months, but I feel the best I have in a while.
I was always discouraged by seeing other people spending so much time on learning new things or on their side projects. But now I know that it was just not possible for me with a full time job.

Collapse
 
olivierjm profile image
Olivier JM Maniraho

I always try to learn in my spare time but it doesn't work as fast as learning on the job.

At the beginning of this year, I was put on a rails project, It was my first time touching rails code + postgres, I had only played a bit with ruby.
But because of the pressure and having no other options I learned quicker and I was able to complete my tasks.
I am still learning alot about ruby and I always get amazed by how it does things.
Learning on the job allows you to learn way faster than on your own.

Collapse
 
crimsonmed profile image
Médéric Burlet • Edited

Both to be honest.
For us we use yii2 php framework for with over the years we have created a boilerplate and widgets and packages for most common features clients ask. So if their project does not need a specific real-time data viewing or specific technology we recommend to use that.

However for some projects where we dont have that for instance mobile app, real time data viewing etc we get to research and use what we want and then use the project as a help to learn that technology. For instance new mobile app for a client then if it's a small one lets use flutter.

For personal it depends really I have a few personal projects which I know I want to do with x or y technology / framework as the idea is planned. But other less mature ideas I usually do a small poc in various technology to see the differenc. (2-3h max)

Collapse
 
oscardom profile image
OscarDOM

When I was starting as a dev, at work I learned super fast and at home I consolidated the lack of knowledge (patterns, language, tools, best practices, etc.).

Now I try to expand the scope of the task to introduce or apply new cool stuff I'm interested into (but it can be frustrating if we cross it with deadlines...). Side projects or Open Source at home is what makes me happy now.

Collapse
 
radiomorillo profile image
Stephanie Morillo • Edited

At this point in time, it's both! A few years ago, I was learning very little on the job (if anything) so I decided to take classes outside of work and eventually went back to get my Master's while working full time.

As a result of getting my Master's, I'm now in a role that is very different from anything I've done up to this point so I've done a mix of on-the-job learning (which I do both on and off of job time) and learning on my spare time about things that I'm really interested in. It's refreshing (and humbling) to be in a role where I'm starting from scratch and learning as I go, though it can be tiring at times. 😅

Collapse
 
ryansolid profile image
Ryan Carniato

Definitely self directed. But to be clear if I needed to learn something on the job I'd definitely consider spending some amount of time outside of work on it. You have enough to learn about the specific task, implementation etc.., that you don't really want to have the overhead of understanding the basic mechanisms of the technology as you are doing it. You aren't going to master anything without spending significant time, and if it doesn't interest you, you aren't going to do that in your own time. But at least you want to understand the basics so that you can communicate effectively.

Collapse
 
fvaldes33 profile image
Franco Valdes

Being a primarily react shop, we are pretty tied to that framework and don't really deviate much. I usually take new tools or frameworks as an excuse to build something out and learn new things but in most cases this happens outside of work hours.

Collapse
 
jwp profile image
John Peters • Edited

Self-directed all the way. Here's what companies do often, the folks in the trenches carry on the legacy things. They are experts many times over. When new stuff is needed companies reach for outsider consultants. Many of which don't have the depth they are looking for in that new thing! I've witnessed multi-million dollar consultant deals whereby the consultants themselves weren't on to the latest greatest, they were just legacy people in their own/other area.

The truly new stuff takes a lot of time to really get it, without self direction nobody is going to lead our careers. The only issue here is that you need to find a job in that new area (as a greenhorn) to get the proper pressure needed to become a SME.

Collapse
 
buckelieg profile image
Anatoly • Edited

I am working as one-man-team, so I am free to choose what technologies to use. No one cares what I have to do and what way I choose to get things done. :)

Collapse
 
anwar_nairi profile image
Anwar • Edited

I pretty followed this path until I stared to team up with collegues as projects in company got bigger. I feel more productive as different point of views help me open my eyes on facets of problems I would not think of, or ways to solve something in a way I did not know it was possible. It is a great experiences, since then I am convinced the more brains, the better quality the product will be.

Collapse
 
shofol profile image
Anower Jahan Shofol

Mostly from Job/Freelancing Projects. I feel it bit hard to motivate and go deep into something by my own. But when a project needs, I need to cross my limit and then when I can learn a lot.

Collapse
 
domenicosolazzo profile image
Domenico Solazzo

Mostly spare time!

Collapse
 
wrldwzrd89 profile image
Eric Ahnell

I consider myself lucky to have a near-perfect split down the middle: 50% job-dictated, 50% interest-driven.