331

March 1st, 2021 × #javascript#css#react#vue#node

Hasty Treat - Hireable Skills for 2021

Scott and Wes discuss skills developers should focus on in 2021 to be hireable, covering code fundamentals, real-world libraries and frameworks, and soft skills.

or
Topic 0 00:00

Transcript

Scott Tolinski

CSF. Welcome to Syntax. In this Monday, hasty treat. We're gonna be talking about hireable skills for 2021.

Topic 1 00:28

Hireable skills for 2021

Scott Tolinski

These are the things you wanna make sure that you have in your toolbox, tool belt. Where else can you keep skills? I don't know. You can keep them in the drawer. You can keep them on your desk if you'd like. On the blockchain? Oh, yeah. On the blockchain. Very, very relevant. My name is Scott Talinski. I'm a full stack developer from Denver, Colorado. And with me as always is Wes Bauz From Toronto? Hamilton, Ontario? Sorry. Not Toronto. Nope. Not from Toronto. That's offensive.

Scott Tolinski

Yeah. Is it offensive? I wondered about that. No. Do Do you have, like, an us versus them mentality with the Torontonians?

Wes Bos

Not really because I actually have lived in Toronto longer than I lived in Hamilton, so I still consider myself a bit of a Torontonian, so that that's okay. Is that the actual official

Scott Tolinski

description, Torontonian? Torontonian.

Scott Tolinski

Yeah. Surprised I got that right. Cool. Yeah. Yeah. Yeah. This episode is sponsored by FreshBooks and Sentry. Now Sentry is the perfect place to capture and log all of your errors and exceptions, and not only that, but get performance metrics on your application.

Scott Tolinski

This is one of the the places. It's a one stop shop for me to really understand what's going on in my app. I've been using Sentry for so long now, And, really, I get such a good picture of what's happening in the site just by looking at the Sentry logged exceptions and unlocked exceptions, All of those things, attaching them to GitHub issues, knowing when there's a problem. I really cannot, stress just How much Century has saved my bacon on big launches where you you think you have everything buttoned up, your tests are all perfect, everything's passing, you're good to go, you push the update, Then all of a sudden, you get an alert from Century.

Scott Tolinski

This particular issue or error that pops up, and, oh, man, it was just something that missed you. So head on over to [email protected].

Scott Tolinski

Use the coupon code tasty treat, all lowercase, all one word. You're gonna get 2 months for free. Test it out. Just see why Logging and capturing your errors and exceptions in this sort of way is essential. Thank you so much for Century for sponsoring. And we're also sponsored by

Wes Bos

FreshBooks.

Wes Bos

FreshBooks is the cloud accounting software for your small business. If you are spending 2021 Getting a few clients. You need to build them, log a couple expenses. You need to manage your time. You need to turn an expense into an invoice. FreshBooks is a software For that, you're gonna get paid faster with it. Check it out at brushbooks.comforward/syntax, and make sure you use syntax in the how did you hear about us section.

Wes Bos

Alright. So Hireable Skills for 2021. This is an email I get every 3 minutes like, Dear Wes, Love the podcast. What do I learn? What is it that I need to learn? And even, like, looking at the potluck questions, pretty much this is, like, every 10th question that we get is, like Like, just tell me what to learn so I can go ahead and and get a job. And I was, like, just, like, thinking about it. Like, okay. Like, Obviously, there's no there's no silver bullet here. But if you were to come up with a list of skills that someone would need, What do you think that they are? And what I've sort of stumbled upon and and Scott and I have stumbled upon here is, like, we think that a set of good fundamentals, A set of real world Lib tools that are, like, modern, and then a dash of soft skills are sort of like the, I think the 3 big ones in order to look attractive to a hiring manager. So we're gonna go through through those 3 sections here and just explain what we mean by each of those. So We do have lots of episodes on the fundamentals. You can go back in into the catalog and and listen to all those episodes about What are the fundamentals of each? But we're gonna do a little high level here and just talk about, like, what we think you should should be learning.

Scott Tolinski

Yeah. Cool. So let's get into it here.

Topic 2 04:13

Clean and readable code

Scott Tolinski

The first little bit, I think we should just talk about maybe your code in general. Right? Like, let's say a high level view of your code before you're heading into an interview or an application where somebody is going to be looking at it, you You gotta think about it like this. Would you show up to your job interview wearing I'm trying to think of something that in 2021 would not be appropriate to a job interview. Wayne Gretzky T shirt.

Scott Tolinski

Graphic tee. A graphic tee. Yeah. A graphic tee of of Wayne. I mean, you know, there's a lot of goals and a lot of assists in his lifetime career, but that's probably not going to get you the job. Right? And and you have to think about in the same respect, like, with your code. Would your code show up to an interview or a job application in a Wayne Gretzky tee? I don't think so. So you're gonna need to take some time, and all it really takes is an Hour or 2 before you submit that application or maybe even right after you submit it before anybody looks at it, take some time And really take a good look at your code.

Scott Tolinski

Make sure that anything that you're presenting as part of your code portfolio is buttoned up. It is got its its hair gel in or whatever it might use. Either way, you wanna add comments. You wanna make sure it's clean. You wanna use some code formatting.

Scott Tolinski

The easiest way to do that is just run Prettier. Yeah. Exactly. Prettier in comments And make it look nice. Have it some sort of clean formatted whatever because your interviewer is not going to care what the format is. But let me tell you, whenever I get sent code that is clean and formatted and commented, just from somebody even being like, hey, Scott. Can you take a look at this? Like, what's wrong with this? Whenever I get code that's really nice, I'm always just like, oh, this person, they they're on it. You know? So I I think that's a good first impression. Just like you wanna make a good first impression with your own appearance and how you act and dress, you want your code to do the exact same thing. You wanna clean it up. Alright. Let's move into

Wes Bos

which pieces of fundamentals you should have. So I'll start here with JavaScript since I I wrote these comments here, and then I'll let you start off with CSS.

Topic 3 06:11

JavaScript fundamentals

Wes Bos

So what do you need to be good at with JavaScript? If you're looking to get hired, focus on the fundamentals. Again, go back to the JavaScript fundamentals episode. But Real quick, basics of the language, so storing data and arrays and objects, looping over those arrays and objects, Being able to access properties from them, looping flow control, all the different array methods, an okay understanding of how promises and async await, That stuff gets a little complicated. You don't have to be, like, obviously, a master at it, but just understanding that there is this part of JavaScript that is asynchronous, and Understanding how that works is is kind of key.

Wes Bos

DOM basics, selecting elements, listening for clicks, updating elements, the very basics of just, like, select the thing, listen for something, and then update that thing as well as, like I'm curious what you think about this, Scott. Do you think, like, Somebody's applying for a job. Do you think it's good to have some node basics even if the job is not necessarily asking for node?

Scott Tolinski

I think as far as I would say, I would say, personally, if the job is not asking for Node,

Wes Bos

Maybe an understanding of what Node. Js is and why you might use it. But in terms of, like, actual code, no. I don't think anything's needed there. Yeah. Okay. I I think so as well. Like, a lot of companies aren't even gonna be running on Node. So it's not, maybe. Like, it's not necessarily something you'll touch, But you, for sure, will be touching Node in the tooling that you have. So if you've got a day to to work on Node, just Do the very basic, like, make a contract generator, like Scott said a couple episodes ago, where you read the file, modify it, and then write it out to a file. Past that, like 90% of your JavaScript fundamentals will transfer to doing node code as well. Yeah. Totally.

Scott Tolinski

One time in a a job interview, I was asked to write an HTTP call In JavaScript, so just like a basic fetch without a library.

Topic 4 08:08

HTTP requests in JS

Scott Tolinski

And, unfortunately, unfortunately, this is before fetch was, like, the main API, so it was a bit of a pain in the butt. But I I would imagine, like, if somebody would say, how do you call an API? That might be some something that you might just get asked in general. So being able to work with Just HTTP requests in general in JavaScript and understanding how and why. Yeah. And I'll I'll I'll pick up the CSS aspects of this. No. CSS is gonna be, You know, difficult because you you wanna be able to have examples in your code base that show the visual understanding. Now typically, when you're applying for a developer Roll, they don't care if you are design heavy, like, if you have those design skills themselves, at least most of the Developer positions, especially front end developer positions. Now if you're applying for a design specific position, this might be a little bit different. But For developer position who's doing website designs, you're gonna wanna be able to show that you can have pixel perfect design. So for instance, like, A very valuable skill for me would be to have a design, maybe what if for that be a PDF And then have your website that exists. And you could just say, here's the initial design. Here's the the CSSing that I did to get it there. And I will look at those 2 things before I will even look at the code because I've had so many coworkers, so to Say your interns that I worked with who would turn it into the a design, and it was very clearly, like, did you look at the PDF? Like, okay. This is very clearly one. The the sketch file or the Figma file or whatever clearly shows this border to be 1 pixel, but for some reason, you chose to do it 2 pixels. Why Did you decide to make that editorial decision? And those types of things are like those types of things are bad. That's a nice way to put it. Yeah. Be they're bad because it it shows a lack of, of attention to detail, a lack of care in your work. So you wanna make sure that you can show off that you can reproduce designs that designers or somebody else creates and that you can reproduce them in pixel perfect CSS. CSS. Okay? Another thing, I I think, it needs to work well on mobile. So if somebody's popping it open on their phone, if it's something that you did, it has to look nice. It has to work well on mobile. Just you never know where people are gonna be looking at it. You gotta make sure that it looks nice on all of them because it might look good at 9:60, and then your Interview opens at at 12:80, and it looks like a complete horse manure. Another one would be not relying on libraries. Now this is not me Dunking on libraries here. I don't care if you use Bootstrap or Tailwinds or any of these, like, you know, utility or helper based libraries to help you get up going with CSS and designs, but it can be a red flag if all of your designs use it, if all of your projects use it, If you are only using it in in relying on it, you know, a nice thing that might be good in an interview, let's say you get to the interview stage and all of your Projects are in, let's say, tailwinds, and I say, okay. Do you have anything that is just CSS, right, or or Sass or something? And you might say, oh, no. This is the only way I know how to like, that's a huge red flag. For me, you have to know what you're using and why you're using it, and how it augments those base level skills. But if you don't have those base level skills, it's going to be pretty obvious. So You wanna make sure you have those base level CSS skills outside of libraries, you know, to the metal CSS, How to quickly and efficiently do things in a modern way. Like, if I see somebody bringing me a modern I've centered this using these These techniques, oh, I used aspect ratio to do this, but I understand the techniques when to not use aspect ratio, whatever.

Topic 5 11:57

CSS fundamentals

Scott Tolinski

As long as you have those understandings of real world based foundational CSS, you should be good. And by all means, don't feel bad about using libraries in your things. Just know that It needs to be very obvious that you have those foundational skills as well. Yeah. I I think that can be said for literally anything, JavaScript, CSS. Like, you will likely use frameworks or libraries for these things in your job.

Wes Bos

But just knowing how they work under the hood, I'm going to say it It's super important because at some point, you're gonna need to be able to fix something. And the question is not gonna be why is my bootstrap doing this, but the the question will be Why is my float broken? Or not float. Nobody uses floats anymore. Why is my grid thing, doing this at this weird aspect level? Or why is the Image being stretched when it's a flex of 1 or something like that, so you need to know how this stuff works at a very low level. So let's move over to Real world libs. So that's the fundamentals, and I think those are very attractive to, employers as having a good set of fundamentals and understand how the stuff works. But at the same time, you do need to also be relevant and have skills in whatever the latest and greatest libraries are. And this stuff is Constantly changing. So my opinion is you need to have one of, I'm going to say, React, Vue, or Angular.

Topic 6 13:21

JS framework experience

Wes Bos

Even if the job that you are applying for is using a different library, Ember or Svelte or something like that, having one of those big three, In my opinion, at least at the time of recording, that's gonna show that, okay, this person understands what's going on with The current JavaScript landscape and those ideas of components and fetching data and and rendering on the client, those will apply to whatever it is the the person is using. Yeah. Totally.

Scott Tolinski

For CSS, again, you're gonna wanna make sure that you have an understanding of what, like, scoped CSS libraries out there exist, whether or not it is styled Components or emotion for React, or maybe you're getting into something like Svelte land where it's baked in. Understanding how you can scope CSS To a specific component is going to be a big thing. Even though people will say, just learn the cascade. No. Okay. Stop. The cascade is is the wonderful and amazing, but at the same time, knowing when and where and how to scope tightly to a component is an important skill to have CSF within your applications.

Wes Bos

Totally agree. And, again, like we said, the ideas behind scoping CSS, it doesn't matter literally what tech you're using. It just matters that You understand this idea of writing CSS, whether that's VFM or a library. We'll show that you understand how that those ideas work. If you're applying for a job that has Node, I would say having familiarity with Express or Express like APIs, Next.

Topic 7 14:25

Scoped CSS experience

Wes Bos

Js, architect, all of the these ones right there. Basically, just take some data, and you'll be able to send a response from an API endpoint.

Wes Bos

That's a pretty fundamental concept of that and then having these these libs in there. And the same same thing goes with popular helper libraries. So Date functions or moment is a really popular one used by tons of people right now, and we know that moment is It's sort of deprecated, and you should be using date functions. But I just looked it up, and moment is still more than 2 times popular than date functions just because Yeah. Sometimes You think, like, I don't wanna put that on my my resume because that's old. But, like, a lot of these companies, they don't change their tech every 6 months. They chose some tech, I don't know. 2, 3 years ago, and being able to see that that person still uses the tech that we use is often like, I remember When I was in university, I had on my resume CMS.

Topic 8 15:48

Common helper libraries

Wes Bos

Like, I'm I'm good with CMSs, and, I was applying for a, like, an internship or a coop.

Wes Bos

And they're like, oh, you know CMS? I'm like, yeah. Totally.

Wes Bos

I know lots of CMSs. And then, like, I got the job, and then they're like, alright. This is CMS.

Wes Bos

And they showed me how to use it, and I was like, that's not the CMS. Like, they use the same acronym that I use for Funny. But it was just like this totally different piece of tech that, Like, I had no concept of, but the fact that they saw CMS on it and, like, again, I I've also got a whole bunch of freelance projects because people say, jQuery. We use jQuery as well, and then they just sorta line that up. Right? The people that are hiring you don't necessarily know, and they're just playing buzzword bingo. And that can often get you through

Scott Tolinski

the 1st step at least of just being noticed. Buzzword bingo is exactly what happens after you get your 1st job. Like, that that's the hardest part about tech. Right? Getting your 1st job breaking in, getting your 2nd job, whatever. And then after that, you end up understanding the memes about Recruiters hounding people because I get, like, recruiters hounding me for tech that I clearly don't work in still. But it's, like, Somewhere on a resume of mine at some point that I submitted, and I still get hundreds of people wanting me to interview for Magento positions. Like, do you want to move to New York to work on Magento for $85,000? No. I do not want to do that. Like, that's how it's the worst thing ever.

Scott Tolinski

So another big thing is we get often asked a lot about data structures and algorithms and how much you need to know those things. And to me, my understanding and explanation of this is going to be different based on where and how you're trying to get a job. Are you trying to get a job in Silicon Valley at, you know, FAANG. Are you trying to do the startup life? Are you trying to work as a hardcore engineer for some big tech company that has a big product, then I would say these things become very valuable. Having a knowledge of data structures and algorithms, take the courses, understand it a little bit. That to me is, in that situation, going to be much more necessary for you to have than, let's say, an agency. I've worked mostly at agencies in my life. And in the agency world, I have never once been asked a question about algorithms. I have never once used Any of the data structure algorithm stuff that, you know, you get asked in in FAANG applications, you build websites. In agencies, you build websites, you build web tech, whatever.

Scott Tolinski

And I don't wanna say it doesn't matter how you get it done because you wanna be the best product. Do you want it to be the fastest product? Whatever. But

Topic 9 18:17

Data structures and algorithms

Wes Bos

for the most part, I have never once been expected to know any of that, and it has never come in handy for me. Yeah. I asked this the other day on Twitter because I get these questions from beginners all the time being like, hey. Do you have a course on data structure and algorithms? And CSF. I'm always like, no. I never use that. And I asked on Twitter, like, did you need that to get hired? And the answer was Overwhelmingly, yes. I needed it in my interview question, but I specifically asked for big tech companies. So if you wanna work at Google or Walmart or or one of these, like, larger companies, it seems like they do ask it, but not like the scary questions that I think you're probably Thinking of and what I thought a couple people gave me some good links to these these practice questions that are on CSF. Leetcode .com.

Wes Bos

I thought it would be kinda fun for us to try some of these data structure and algorithm questions. And, like, I took a peek at it. A lot CSM. More just like, given the survey, filter and loop and whatever, or, like, given these days of the week and these stock values, What is the maximum possible outcome that you could have from all of them? And I'm just like, ah, like, I wonder if Scott and I We'd be able to do these. Oh, I wonder. Do you think that'd be kind of a fun one? Yeah. It it would be fun until

Scott Tolinski

I Started crying because I didn't know. I'm just talking. Yeah. No. I know. It definitely would be fun. I'm in I'm I'm certainly down for a little bit of public humiliation in that regard because I think it's important for people to see that, like, this stuff can be very hard, especially if you don't have the specific training. Because sometimes you get into these quiz platforms that are like, do this, and We'll take you all day, and you'll have a solution that is, you know, 30 lines of code, and then somebody was able to solve it in a one liner using several chain methods. And they're like, oh, isn't this obvious that this is how you do it? And it can make you feel really bad about yourself. So I just want people to know that, like, a lot of these things are very specific in terms of, what you've practiced in the past. So, okay, let's get into the soft skill side of things because this is, like, a really big aspect of it. And and me, personally, I think this can be the maker or breaker in job interviews, and it's not about being nervous or anything like that. People can be nervous in interviews, and that's fairly obvious when you're nervous, and that's not necessarily, like, a downside, so to say. Like, I don't think I've ever, you know, been upset that somebody's nervous In a job interview. It's not about that. What it's about is knowing how to talk to people.

Topic 10 20:53

Communication skills

Scott Tolinski

And a lot of times, us Developers, we get into these modes where we're used to talking to other developers. We're talking code. We're talking programmically. We're not necessarily being able to discuss The larger viewpoints of things like the project goals and overall team stuff. And I think it's immediately obvious in an interview when a developer is that type of developer, I e, they're only interested in the code. They're not interested in the the product. They're not interested in the company.

Scott Tolinski

So do your research. Know Who you're talking to, what you're talking about, know what the goals of the company are, know how to talk about those. I'm constantly flabbergasted remembering some of the, Like, ways that certain developers that I've worked with have talked to project managers in the past. And I know that if I'm in a job interview and I And I'm interviewing somebody, and I get a hint that this person is not going to be able to discuss their projects appropriately, Maturely with project managers. Yeah. If they're going to harbor this developers versus everyone attitude that you sometimes get, That can be kind of fun. You get the dev team. There's a little bit of camaraderie there. Everybody's in 1 room working together or whatever. But the moment that you lose track of what you're doing with this project, and who you're doing it for. It can be very frustrating to work with a team like that that's so all about themselves in that sort of way. So Make sure you are able to communicate very clearly the goals of what you're trying to do with this team, what your role could that be in. Like, I can bring these things to the table, and these skills are are very big in interviews. They're very, very big.

Scott Tolinski

Another one would be, Like writing good emails, especially in this world where we're doing a lot of this predevelopment stuff with writing emails, a lot of preinterview stuff with emails. You're gonna wanna make sure that You know how to write a good email. Wes, would you got any have any excellent email tips here? I know you're a email master.

Topic 11 22:26

Email writing skills

Wes Bos

Yeah. We have a entire show on on writing good emails, but I think, Generally, just keeping it short and clear as to what it is you're asking or what it is you are returning to the person.

Wes Bos

So don't write a huge book. Don't jam it all onto a one line. Use line breaks. The enter key is free. You can go ahead and use that.

Wes Bos

If you need multiple things or you're supplying multiple things, use a numbered list. There's, like, this, like, weird space you can be in where If you're very professional and curt, it can sometimes come off like you're mad. And then there's a flip side of where if you're too, like, happy and using exclamation marks like crazy, then you you sound unprofessional.

Wes Bos

So there's, like, a good I don't know how to get there, but there's a good space In between there where it's just very clear, and there's some people like, specifically, I think of a lot of the people who sponsor the show, A lot of the people that work at, like, Century and FreshBooks and whatnot, they send super short Emails that get the point across very quickly, and I'm just like like, these are obviously people that are very successful in their careers. They're also very good at writing emails. Right? Yeah. Yeah. Totally.

Scott Tolinski

And that can be another. It's a first impression maker. Remember that anytime you're applying for a job, The people who are reading it do not know you. They're not necessarily obligated to give you a chance, so they don't know you. Every communication they have with you whether or not it is via email, via phone, via your code, via your Cover letter, every interaction they have with you pieces together a little bit of who you are. Like, look at them from an outsider's perspective and say, if this Person doesn't know me. Do these things that they're getting represent me and what I want to be represented as? Does it get that across? Because that can be a very powerful tool for you to understand how you're being represented by your materials. Like, I think when people would read my cover letters or anything like That they would say, this person has a love for web development.

Scott Tolinski

They have a strong want to work for our organization, And they have the skills to bring it. So that's, you know, those are the types of feelings that I want to get across. That's a hard thing to

Wes Bos

Cultivate. Like, I I would like to see some, like, way maybe we can, like, start, like, chewing on that in a future show. It's like, how do you actually get these These soft skills, how do you practice and and get better at them? Because like we've said here, what you should have, but how you cultivate those Might take a little bit more work on our part just to figure out how to get those those things across. What do you think? I agree.

Wes Bos

Alright. I I think that's it. Hopefully, it's helpful to you. If you think there are any skills that we missed out to getting hired in 2021, Shoot us a tweet at syntax fm. We'd love to hear what you think about it. Thanks so much for tuning in. Catch you on Wednesday.

Wes Bos

Peace. Peace.

Scott Tolinski

Drive in your podcast player or drop a review if you like this show.

Share

Play / pause the audio
Minimize / expand the player
Mute / unmute the audio
Seek backward 30 seconds
Seek forward 30 seconds
Increase playback rate
Decrease playback rate
Show / hide this window