0

Should product-minded engineers learn UX design?

Profile picture
Junior Engineer at JPMorgan Chase6 months ago

Questions:

  1. Is learning design a worthwhile investment as someone most interested in doing full-stack work at product-based startups?

  2. Might working in a small product-based startup be an effective way to pick up design skills while working as a SWE?

  3. How can engineers build more complex side projects without any design skills?

Regarding #3:

I’d argue that basic product design skills are critical for building any CRUD application. You can’t build something without defining what it’s going to do first. 

Literally - you can’t write code for a feature if you don’t know how the app will behave during a loading state, an error state, a complex edge case from a wonky user flow, etc.

You can wing the design and iteratively dogfood it to improve its UX - but that’s the same as doing UX design while having zero UX design skills. It’s the software engineering equivalent of writing spaghetti code - except you’re not even improving.

Personally, I find that UI libraries like TailwindUI or Flowbite are most helpful for solving UI problems like designing a button or a modal. However, they can’t help you decide how a screen in an app should work, nor can they abstract away all design challenges for more custom use cases.

Also, any CRUD application built with poor design will inevitably feel like a crappy database client. 

The design problem applies to backend projects, too. Backends exist to service frontends, so you can’t build a backend without knowing what features the frontend needs - and you can’t do that, either, if you don’t design it first!

These are all challenges I’ve faced working on my own projects.

I suspect the best approach is really to just learn UX design and a design tool like Figma. However, that’d be a hefty investment given UX design is a separate field from SWE - especially if it’s just for a side project.

Also, building cool stuff as a semi-competent engineer is tons more fun (for me) than learning design from scratch!

What are your thoughts on my aforementioned questions?

38
2

Discussion

(2 comments)
  • 1
    Profile picture
    Thoughtful Tarodactyl
    Taro Community
    6 months ago

    In my opinion you don't need to be an expert at UX design, but certainly understanding basic UX can be helpful. I think a basic 2-3 hour course to understand the basics should be good enough.

    At the end of the day UX is all about empathizing with your customers, understanding their limitations (bad internet? old phones? are they web users?) and understanding how they interact with the app/website

  • 0
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    6 months ago

    I personally don't think it's necessary to go full-blown design learning mode and learn the intricacies of Figma, Photoshop, and other UI/UX tools. However, if you have the time (and especially if your team is lacking design resources), then it certainly won't hurt.

    For myself, I struck a sort of middle ground by just building a lot of a side project apps on my own. When you're doing a solo side project, you are the the product manager, designer, and software engineer, so I naturally got better and better at building smooth user interfaces over time. It's not as stunning as say Airbnb, but my top apps are overwhelmingly rated 5 stars with tons of glowing feedback about the simplicity and smoothness of my UI/UX.

    When it comes to design, I have 3 core pieces of advice to get better on top of doing side projects:

    1. Dogfood - Use your own product. Feel the pain of the crappy parts of your interface.
    2. Minimize clicks - Make it so that all your major features are less than 5 clicks away from the home screen, ideally <=3.
    3. Creatively "borrow" from top apps - Most front-end apps are CRUD products with some custom flair: There really aren't that many unique UI components going on. The first thing I do when I take on a new app is to try out a bunch of famous apps that have similar user flows and mostly copy those. There is no need to reinvent the wheel, especially if you aren't a proper designer.

    I dive into all of this more here: [Masterclass] How To Build And Grow Tech Products To 500k+ Users For Free

JPMorgan Chase & Co. is an American multinational investment bank and financial services holding company headquartered in New York City and incorporated in Delaware.
JPMorgan Chase16 questions