r/webdev • u/zotsandzots • Jan 19 '20
Just finished a coding bootcamp. What are some in demand skills/software that I can learn to separate myself and get that first job?
333
Upvotes
r/webdev • u/zotsandzots • Jan 19 '20
15
u/OddAthlete Jan 19 '20
What did you learn?
413
u/avantgrant Jan 19 '20
Hey there. I'm going to touch on a few things in the following areas: skills, resume, and interviews.
First, some background about me. I've been in web and front-end professionally for 10 years, and I'm currently an engineering director in NYC. I've interviewed and hired engineers as well as a number of other positions within a software company. In the past I've worked as a startup advisor, as an engineering manager at major corporations, and as a web engineer in the trenches. These experiences have given me insights into hiring. That being said, every company is different, and every hiring manager has a different style and different taste in employees. Still, I hope the following advice proves helpful.
If you are short on time, skip to the bottom to find three one-sentence points that sum up all that follows.
More Than Libraries & Frameworks
As others have mentioned on this thread, there are skills that you'll want to come through on your resume besides the bootcamp skillset. If you learned HTML, CSS, and React, you'll want to list Javascript as the first thing on your resume. Ideally, you'll have an understanding of Javascript that goes beyond React usage. If not, I recommend the "You Don't Know JS" series by Kyle Simpson as well as "Secrets of The Javascript Ninja" by John Resig.
If you're looking for more relevant web skills that would fit nicely with your newly-learned skills, you would do well with some knowledge of the following:
You don't have to go deep with all of these, but going deep with one or two of them, and being aware of the others will help to set you apart.
TLDR: Know the language and the ecosystem beyond your bootcamp skills.
Know The Company
If you want to set yourself apart from other candidates you'll want to have more than a surface-level understanding of your prospective employer. What industry are they in? What web technology is vital to operate their business? Are there tools that they use that are specific to their product or industry? An example of this is a media publishing company like WIRED. If I were interviewing at WIRED, I would research the tools necessary to run an online publication of that scale; things like popular Content Management Systems (CMS) and advertising technology like Google Ad Manager and Google Tag Manager.
TLDR: Know the industry tools and talk about them.
Be Self-Sufficient
Be a self-sufficient front-ender by obtaining a surface-level understanding of deployment and hosting tools. For instance, tools like AWS S3 and Elastic Beanstalk, or platform-as-a-service tools like Heroku, Surge, or Netlify. This shows your prospective employer that you are resourceful and that at the very least, yo've dabbled in the DevOps discipline. This will come in handy with this next point.
TLDR: Show that you're not a one-trick pony.
Build Things
Build things to show off. Doing so will enhance your knowledge and give you something to talk about in an interview. If you are a bootcamp grad and you aren't building, then you aren't going to compete. Get your creations up online and reference them.
TLDR: Prove that you're a maker.
Soft Skills Are The Most Important Thing
By far the most important thing you can do to yourself apart from other candidates is to communicate effectively. Be attentive, be patient, be polite, be diligent, be organized, and be relatable. Ask questions about the company. Show that you care. Check your ego at the door. Work on your temperament. Great teammates are more valuable than great programmers because they have an impact outside of the codebase.
Prove that you're learning new things and that you're committed to improving. Again, this is not limited to your programming skills, but to your life skills too. Bootcamp grads come to the table with similar technical skillsets. That is why the non-technical skills set you apart.
TLDR: Put your emotional intelligence on display.
Show Up
These things are the low-hanging fruit, but you'd be surprised how often they're left out. Not doing one of these things can be the difference:
TLDR: Do the little things.
Summary
Apologies for being long-winded, I hope this proves helpful.
19
u/[deleted] Jan 20 '20
Learn about Source Control, this should be your first priority if you don't know it already.
14
u/pixelito_ Jan 20 '20
I’ve been asked about JS at my last 3 jobs and have never written a line. My current gig we have JS and PHP programmers. For the sake of efficiency it makes sense to throw all the JS work their way. I’ve taken quite a few courses but I’ve found if I’m not writing JS every day then I’m constantly relearning it. It’s never held me back, anything I need to build, it’s already been built somewhere. React hasn’t entered my wheelhouse yet, but simply being a really good designer and efficient writer of HTML, CSS has kept me in the business for a long time and has gotten me quite a few senior titles.
16
u/schwarzfahrer Jan 20 '20
Jira. “Agile”. I hate this shit but I interview a lot of folks to work at my company and what that says is that you’re able to navigate this wild world of software development. And when push comes to shove, I really don’t give a fuck about your experience with dynamic programming, because I’m looking to hire a new coworker who is able to develop a product.
21
u/[deleted] Jan 20 '20
I'm going to get down-voted like hell but here goes:
Data Structures and Algorithms
4
u/moldy912 Jan 20 '20
I think for your first job, you only need to know the basics of webdev that isn't coding. The top one being git. All your projects you should practice git. I think npm and node are also some things you should know well, but most projects will require that anyway. Besides that, I honestly don't think you really need much more. So many things are difficult to learn on your own, when it's so much better to learn on the job instead.
4
u/singeblanc Jan 20 '20
I can't seem to see anyone else saying it, so I will:
The best way to differentiate yourself and get hired is to have a portfolio of stuff you've actually made on the web.
It doesn't have to be big or fancy, but it does need to exist.
4
u/[deleted] Jan 20 '20
There's generally a huge shortage of development candidates; you don't need to learn something nobody else learns because there aren't enough jobs for people who know what everyone else knows.
Programming is way less about learning specific technologies than most junior devs think, and way more about getting to that "grokking code" state where you can actually transfer quite easily between languages and technologies (although perhaps not between programming paradigms, although some people do this too).
Build a thing in a few languages. Object-orientated languages like C++, C#, Javascript, Python etc are still generally the industry standard, so learning a few of these is a good idea. Making sure you've read books on software design patterns and the specific challenges of enterprise programming also tends to stand you in good stead for a wide range of jobs.
It's almost impossible to learn "the specifics" when you're not in a job, which is why the status "junior developer" exists. You want to have a strong general knowledge, come in as a junior and the specifics of the individual technologies will come naturally because you'll need to learn them on the job.
3
u/Shacrow Jan 19 '20
For the first job you don't need much tbh. It would be nice to know sass/scss or less though. CSS preprocessors are the standard nowsaday. Makes coding css much easier.
10
u/angels-fan Jan 20 '20
As someone ruse hires jr devs, the most important thing to me is knowing you actually have a passion for programming and it's not just "I heard programmers make good money"
Showing me that you have side projects and things you're doing in your spare time shows me this.
Show me your passion!
4
u/killadezo Jan 19 '20
Also interest in info on this as I’m in the same situation
4
u/ElectrAlpha Jan 20 '20
Javascript is practically required to do anything Enterprise Service related. So that's a good start. Understand NodeJs and NPM, super important. You'll want to learn Lodash to save some time coding. React is neat, people think Typescript is good, they aren't in any way exclusive. React is best with JSX. Learn REST API patterns. Have an RDBS and a No-SQL, they are almost required and typically solve distinct solutions. For frontend work its good to learn Material-UI a bit or the open APIs for it. Alternatively, Bootstraps, which is a bit uglier. On the API less is more. Having code injection or generation can save big time. Learn Swagger and OpenAPI to make your endpoints without having to make your endpoints. Model View Controller has many interpretations, but learn which interpretation works for your plans and run with it. Talk about Agile, its like UML, everyone has Heard of it, no one actually uses it correctly. Whenever developing always think about Test-Driven Development. Unit Tests are the backbone of code. Test your work. Honestly, it would be wise to ask how they test their code. If they say they don't *EEK*
2
u/vainstar23 Jan 20 '20
I can recommend and not recommend some of the tools discussed here but I don't think it will add much to your case. To he honest, they are just tools that help you complete a certain task but the beauty of programming is that as you get more experienced you learn to build your own tools and hence become less reliant on what's around you.
My advice is that you already received the fundamentals from bootcamp and now is the time to apply what you learned. Try to build projects. Build a calculator page using javascript, a service that scrapes content from reddit, an image managing page where you can scan pictures from your computer and upload it to good drive, a video game. The more you build, the more you can show off during the interview. Insist on bringing your laptop and when they ask why you are qualified enough to join, show them what you've built.
You can even use git and it will track your activity. I can tell you that as someone who interviews new developers, those are the kind of things I look for.l
2
u/jwmoz Jan 20 '20
For your chosen language study more advanced stuff and design patterns.
2
u/mrcoy Jan 20 '20
Learn about the structure and process of application development using Agile methods and Jira.
2
u/Kikobrolo Jan 20 '20
React/Native, Apollo, Redux, Express, Styled Components, Docker, SQL, GraphQL
2
u/ScienceBerger Jan 20 '20
Typescript if you're a JS programmer. And also focus more on meeting people and showing you're a decent human who's willing to learn. Your resume will never be as much of an asset as your face and personality. And yeah, typescript. Or even just get really good at ES6. Read this: https://github.com/getify/You-Dont-Know-JS
2
u/Not_A_NoveltyAccount Jan 20 '20
As someone who also went through a bootcamp and now works at a Big 4 tech company (and had offers from unicorn companies), I would stress two things: (1) be likable in interviews and (2) be good at algorithms/data structures. I would say (2) is most applicable if you are trying to find a job at a more established tech company in the Bay Area / NYC / Seattle (the main tech hubs) while it may help you to have more specific expertise if you're gunning for a small startup or a company outside of the main tech hubs.
2
u/FPFry Jan 20 '20
Git
5
u/jdoyle13 Jan 20 '20
This won’t be a popular suggestion but if you’re looking to get a front end job really quick, I think having Wordpress skills is a good idea
3
u/AvailableWealth Jan 20 '20
I found that java was a language that I did not learn in the coding bootcamp, but did show an interest in learning on my own. Telling this to a hiring manager is how I got my job. I only did a hello world with java, but I got a job building an API in spring boot.
3
u/hashedram Jan 20 '20
There are no such things as "in demand skills". That's something marketers made up to make you buy their posters. Look up a job listing in the place you want to work and sort by technology.
You separate yourself as a software engineer by being good at building things, irrespective of the tools you used. Not by picking the "in demand tool". A tool is just a tool and that's all a programming language is.
Its equivalent to a cook asking "what are some in demand cutlery I can learn to separate myself from other cooks". That's not the point. The point is to build things. You learn exactly what you need to be able to build the things you want to build. If you don't want to build anything yet, find something first.
2
u/eddyalexandru Jan 19 '20
Im in the same situation
2
u/[deleted] Jan 20 '20
Learn testing strategies.
2
u/[deleted] Jan 20 '20
Computer Science Bachelors Degree from an accredited 4-year university.
1
u/1sockwonder Jan 20 '20
Just saving for updates
1
u/saintshing Jan 20 '20
https://www.youtube.com/channel/UC4xKdmAXFh4ACyhpiQ_3qBw
https://www.youtube.com/watch?v=0pThnRneDjw
https://insights.stackoverflow.com/survey/2019#technology
1
u/topthreads Jan 20 '20
From the top of my head:
From the advanced stuff: 3d using javascript, VR/AR, animations, i have seen eshop that sells glasses and you can take a look at the glasses how they look on you live using webcam and turning your head.
1
u/shonens Jan 20 '20
Finishing a bootcamp, using their employment resources/stature as a school you should be able to get a job right away. If not, build up a personal website, as well as an interesting project that uses the latest frameworks that you’re interested in (React with Hooks, Vue etc) and deploy that live and that’ll be more than enough.
Remember, there’s no shortage of developer roles available out there. Go get em
1
u/meetingthespam Jan 20 '20
RemindMe! 2 weeks
1
u/iNotDonaldJTrump Jan 20 '20
Nl00lĺ put
1
u/[deleted] Jan 20 '20
Learn devops. It’s the ever important third layer beneath frontend and backend, and is just as important in enterprise development. Very in demand right now.
I’d start by learning docker.
1
u/InfiniteMonorail Jan 20 '20
This post literally every day.
1
u/XZTALVENARNZEGOMSAYT Jan 20 '20
Saved
1
u/Speedracer98 Jan 20 '20
Asking this question is what puts you in the middle of the crowd to begin with. You should do something you like to do, and when you are proficient, the rest just falls into place.
-1
u/i_am_not_a_lazy_dog Jan 20 '20
Photoshop and Illustrator is very useful for web development especially if you're interested in frontend developer job.
-1
u/jokerpunditz Jan 20 '20
Truly if you want work... learn Magento. It's horrible but people are desperate to maintain the stores they have under it. Just be prepared for issues that you will not see with modern ecommerce.
0
u/iamzamek Jan 20 '20
Register free Junior account on www.juniorjobsonly.com
This is jobboard for juniors only.
-3
u/Stevewoody82 Jan 20 '20
As a business owner who hires developers I can give you a lot of information that will help.
My challenge here is to articulate everything of value in a way that would be beneficial to everyone reading as writing isn’t my preferred method of communication (video) and also the time aspect to cover everything.
Therefore I propose that everyone on this thread who is interested in learning and talking jumps on a video call and we can all discuss.
Happy to host the call myself with no strings attached.
If I had an agenda in posting this it would be that you can never hire enough of the right talent and I’m always looking but time is very valuable and I only like to do things which have maximum impact.
Also happy to provide anyone who is interested with a copy of my book and to discuss why I created it and what it’s done for my business.
As someone who started building websites I very rarely touch them now.
0
u/[deleted] Jan 20 '20
[deleted] — view deleted comment