Swizec Teller - a geek with a hatswizec.com

    What's an intermediate dev anyway?

    Mason writes on WIPchat ๐Ÿ‘‡

    @swizec I'll be partnered on a project with a less experienced dev soon. We're going to use Gatsby, and he's never worked with React (but knows JS). First thing I did when the boss told me was to send the other a dev a link to your Learn While You Poop thread ๐Ÿ˜Š

    Thanks mate!

    This is also funny because the PM approached me like I'm senior, but I still feel more on the ๐Ÿผ๐Ÿ‘ถ end of the skill spectrum. It seems like clients just assume I've been at it way longer than I have. I just roll with it ๐Ÿ˜ฌ

    Congratz! ๐Ÿ‘

    So I asked Mason how long he's been doing this: Coding for 6 years, professional web dev for 2-3 years.

    That's not too bad!

    I think that puts Mason solidly in the vast quagmire of Intermediate Developer. A designation that is most hardest to wrestle into an exact definition.

    Large companies, of course, have well-defined ladders you can climb, but that's weird.

    To me, an intermediate developer is someone whoโ€ฆ

    • feels comfortable writing code,
    • can come up with solutions on their own,
    • often overthinks things,
    • shoots themselves in the foot sometimes, and
    • just needs exposure to real world problems and time to practice

    That last one is important.

    An intermediate developer is someone who can work independently but needs more experience. Experience is key. The more time you spend solving real-world problems for real-world businesses where the real money is on the line, the better you get.

    No, solving example problems and pre-defined puzzles do not grow you from intermediate to senior. I'm not even sure it gets you from beginner to intermediate.

    It's fun though! Do puzzles if you like them. Just know that, in the real world, nobody cares about the elegance of your solution unless there is a specific business requirement that says Must be elegant.

    True real world engineering, by Luka Kladaric

    Deployed beats perfect every time. That was the hardest lesson for me to learn.

    Sure, go and be elegant if you're building a framework that tens of thousands of engineers are gonna use to solve real-world problems. But that's a very special place with very special rules.

    So here's Mason. He's a good guy who isn't afraid of anything. But he thinks he's not senior enough to guide and mentor someone just starting out.

    Here's what Mason forgets ๐Ÿ‘‰ According to the Stack Overflow survey, 67% of software engineers have less than 5 years of professional experience. Five years!

    But think about it. The web reached consumers in 1993 or so. Tim Bernes Lee put the very first web page online in August 1991.

    That's just 27 years ago. The whole industry has existed for only 27 years.

    Did you know that 50% of the world still doesn't have internet access? 3.5 billion people left to reach over the next few decades.

    Can you even call putting the first website online the birth of an industry? ๐Ÿค” Was the automobile industry born in 1885 when Benz created his Motorwagen, the first internal combustion vehicle?

    True real world engineering, by Luka Kladaric

    Let's see, 1885 plus 27 years ... 1912. Just 4 years after the first mass-produced car, the Model T.

    That sounds about right, doesn't it? The web is just entering the era of mass production of web pages and websites and all sorts of web things.

    True real world engineering, by Luka Kladaric

    This mass production is what's driving the democratization of web development as a profession that we're seeing right now. More and more people are getting into web dev using better and better tools.

    Just like factory workers in the early 20th century. The industry was booming, and everyone wanted to build cars. That's where the jobs were.

    Programs were started to teach people just enough skills to be productive in a factory. People were trained up fast and worked hard.

    Give them the right tools and processes and anyone can build a car! Everyone should go build cars! We have more orders to fill than people to fulfill them!

    You know, just like everyone should go to a boot camp or a school and become a Web Developer. Learn a specific tool, a specific process, crank things out as fast as you can.

    But not everyone can design a car. You need an engineer for that.

    Be the person who builds the tools and designs the solutions. โค๏ธ

    Did you enjoy this article?

    Published on June 21st, 2018 in Learning, Personal, Thoughts

    Learned something new?
    Want to become an expert?

    Here's how it works ๐Ÿ‘‡

    Leave your email and I'll send you thoughtfully written emails every week about React, JavaScript, and your career. Lessons learned over 20 years in the industry working with companies ranging from tiny startups to Fortune5 behemoths.

    Join Swizec's Newsletter

    And get thoughtful letters ๐Ÿ’Œ on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.

    "Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. ๐Ÿ‘Œ"

    ~ Ashish Kumar

    Join over 14,000 engineers just like you already improving their careers with my letters, workshops, courses, and talks. โœŒ๏ธ

    Have a burning question that you think I can answer?ย I don't have all of the answers, but I have some! Hit me up on twitter or book a 30min ama for in-depth help.

    Ready to Stop copy pasting D3 examples and create data visualizations of your own? ย Learn how to build scalable dataviz components your whole team can understand with React for Data Visualization

    Curious about Serverless and the modern backend? Check out Serverless Handbook, modern backend for the frontend engineer.

    Ready to learn how it all fits together and build a modern webapp from scratch? Learn how to launch a webapp and make your first ๐Ÿ’ฐ on the side with ServerlessReact.Dev

    Want to brush up on your modern JavaScript syntax?ย Check out my interactive cheatsheet: es6cheatsheet.com

    By the way, just in case no one has told you it yet today: I love and appreciate you for who you areย โค๏ธ

    Created bySwizecwith โค๏ธ