Swizec Teller - a geek with a hatswizec.com

    Are You an Engineer or a Developer?

    Did you know software engineers make $13,000 per year more than software developers on average?1 It’s even more than that (a $22,000 difference) in California.

    Same job, right? You build software. Get some specs, build some software, make shit work. But the market clearly believes there’s a difference.

    It took 18 months, but I think I finally understand the difference. There’s a binary question you can answer to see if you’re a software engineer or a software developer.

    Let’s role-play!

    Manager Bob: Our business has a problem. We spend a lot of money on acquiring users, but they drop out of onboarding before their ah-ha moment2. We’ve identified three drop-off points where we lose 50% of our users. Our design and product people came up with a new onboarding flow that aims to fix this problem. It took weeks to design, and we think it’s really good.

    You: Uh-oh.

    Manager Bob: We tried to reuse old components as much as possible, but the overall onboarding experience is completely new. We also changed some business processes to facilitate these improvements and get rid of unnecessary steps. That might have implications beyond onboarding.

    You: Oh yeah, it definitely will. How did you reuse components exactly?

    Manager Bob: We used the same semantics as before and tweaked the design to fit our new flow. That’s not hard to build, is it? To be honest, you’ll just have to figure it out anyway. This needs to happen. We can’t keep wasting ad spend like this.

    You: Right, yeah. No, we can’t.

    Manager Bob: How can we get this out as soon as possible?

    I have yet to meet a coder-at-heart who wouldn’t break a sweat in this situation. My initial reaction is always something like “You want to do what? Holy shit.”

    You get an amorphous blob of a project. What you do next defines you as an engineer or a developer. If you can take the amorphous blob and turn it into:

    • action steps
    • sub-projects
    • a staggered delivery plan (perhaps)
    • opportunities for work in parallel
    • a clear Thing To Do First™
    • a well-defined Thing That Says You’re Done™

    …then you are an engineer. If somebody else has to do that, then you’re a developer.

    Or maybe the difference lies in the size of that amorphous blob you can begin with. ?

    PS: This is what an engineer looks like per Wikipedia. It’s a shame software engineers don’t get slide rules.

    wikipedia commons thumb d d0 Kitty Joyner   Electrical Engineer   GPN 2000 001933 jpg 800px Kitty Joyner   Electrical Engineer   GPN 2000 001933

    1. The hard data I have is from salary distributions of engineers/developers/programmers on H1B visas. Here’s a tweetable recap that links to source. I haven’t been able to find hard data for jobs that don’t involve immigration. ↩︎

    4) In UX, the a-ha moment is the first time a user says “A-ha! That’s how this app makes my life better”. Read Kathy Sierra’s Badass book for more. ↩︎


    Did you enjoy this article?

    Published on September 14th, 2016 in coding, Opinions, Personal, software, Software developer, Software development, Software engineer, Software engineering

    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 ❤️