44

Ask DN: Where are all the UI engineers?

2 years ago from , http://mattaningram.com

I work as a product designer and UI developer, but I'm leaving my company soon and we are trying to find a UI developer to replace me. However this process is making me realize just how few people actually promote themselves as CSS experts. Everyone claims to be a front-end developer focusing on JS, and mention their CSS abilities in passing, rarely even being specific about SASS/LESS/whatever abilities.

We have great JS front-end developers, what we need are people who REALLY know CSS, layout, best-practices, performance, etc. Where do I find these people? What are they called? Why is this skill-set seemingly so unpopular?

58 comments

  • Juan F. MenaJuan F. Mena, 2 years ago

    but... should designers...

    33 points
  • Samanta Aquino, 2 years ago

    Relevant story...

    A year ago I faced a huge career dilemma as a designer when I quit my job at a small software shop (we built sites and apps for clients). Over there I really enjoyed writing CSS w/Sass — huge fan of OOCSS/SMACSS/BEM, and democratizing and documenting the CSS code I was writing (design systems, FTW), but I really didn't enjoy doing any JS related implementation. We were all over Angular back then and I was seriously not interested.

    I wasn't sure what I was. All the positions I stumble upon for front-enders talked about being responsible for building applications using MVC based frameworks and whatnot. That wasn't me. I loved designing experiences, but I also enjoyed a small piece of the building part (the html/css part). Yet, I couldn't find a position that described my mixed set of skills… so I panicked about my future.

    It also hurt my confidence. When I measured myself against the requirements for these front-end positions, I felt like an amateurish developer. And when I looked at designer positions, I didn't have the case-study type of portfolio that would show I had a solid design process, so again I looked unskilled.

    So, I decided to stop being in the middle of the spectrum (designer vs front-ender) and chose a side. I'm now focused on design (research, testing, visual design) and don't really do coding for work, only for personal stuff.

    TL;DR... I don't think the industry has decided on who's job it is to care for CSS architecture in a product, so job posts aren't clear about it. Consequently, job seekers get the impression that there's no demand for this mixed set of skills and that might be causing a "drought".

    19 points
    • Mattan Ingram, 2 years ago

      Yes, this, thank you for writing this reply. This is exactly the feeling I went through. I'm fortunate to be working somewhere where I can focus on design and HTML/CSS but not worry too much about the React/Angular side (although I did learn a lot of JS in the process and do enjoy those frameworks), but now that I am leaving I am worried I will be going right back into this context you describe.

      It makes me sad I can't even find people to have conversations about CSS with in person, only online.

      4 points
    • Rafe GoldbergRafe Goldberg, 2 years ago

      I don't think the industry has decided on who's job it is to care for CSS architecture in a product

      wow, very yes (at least in my experience); much unfortunate...

      0 points
    • Mark Forloop, 2 years ago

      Just imagine the weight of this feeling for someone who's breaking into the industry.

      0 points
  • Michael SchofieldMichael Schofield, 2 years ago

    This is a pretty interesting problem. I prefer writing CSS to scale, and my favorite dev writers are those like Harry Roberts (@csswizardry), who make CSS their business. But from my perspective the job positions don't often ask for CSS expertise, they presume it's a given - which I think many do.

    I feel like this is front end developers responding to the message put out by those hiring. If there was more apparent demand for CSS experts, you would have them.

    7 points
  • Account deleted 2 years ago

    Yeah... since moving back to Boston a few years ago I've run into this hardcore. Didn't have this issue when I lived in LA and SF.

    For some reason here there is this weird perception like it's beneath an engineer/dev to do CSS... to the point where they would blindly ship something (if not stopped) that looks crappy - because functionally it was to spec.

    In Boston - I think a large part of this might be the types of companies that are most prevalent here. I've long felt that on the west coast, they make apps and products that are more customer facing - they delight and solve for more personal/emotional needs. Here, the pride has long been on the tech that makes stuff work... the machinery behind the scenes.

    6 points
    • Mattan IngramMattan Ingram, 2 years ago

      Exactly, a lot of devs look down on CSS. I'm glad I'm not the only one experiencing this. Maybe I should check out the west coast haha.

      3 points
    • Chad Behnke, 2 years ago

      I totally agree with your assessment. CSS has been seen in all of my jobs as an "also do this" for general backend developers and not an area of focus. But we have an agency team at our company with a specialized FED and I would pay many real gold bars to be able to pass my designs to someone like her on the product team. In addition to 'looking down', visual FED usually comes near the end of a feature's development cycle, so there's also a rush to get it done and passed on to QA. Even when I do the CSS as the designer, I get subtle time pressure cues while working on it (wait the feature is DONE why is it in this weird middle phase for so long??). For a while it was a thing at one of my jobs to make a feature look so ugly I would have to style it. That went on until a couple of those implementations made it into production.

      Front-end has been a constant source of indecision for me in my career. With front-end JS app frameworks becoming more and more complex, I'm finding it harder and harder to maintain understanding in my head of how my HTML/CSS fits into an application. But I also can't just pass things off because I know there are things about my design that I'm going to want to edit once it's all in motion. Additionally, I see being able to build at least static websites as a powerful tool to help me bring ideas to life, and there continues to be exciting additions to CSS that make it easier to make those amazing experiences. I'm constantly switching between the poles of I don't want to touch code ever" and "oh my god look at that cool thing I can do with the Internet!"

      2 points
  • Ray SensebachRay Sensebach, 2 years ago

    +1 to looking at product designers for this. I am a product designer and consider myself an expert in HTML & Sass. That said, I would never call myself a UI Engineer. In my experience, this assumes working JS knowledge, which I have none.

    I'm also on the other side of things here, where it's rare to find a postion where you can actually use your code skillz in a 'design' position. Front end code tends to be looked down upon by backend devs, and deemphasized when it comes to feature importance and bug fixing.

    6 points
  • Tyler Cecchi, 2 years ago (edited 2 years ago )

    I'll add that seeing as the front end is trending toward component based UI and styles that compile to JS, specializing in CSS/HTML without any expertise in JS seems like it has a pretty short shelf life.

    It's only a matter of time before designers and front-end developers are the same person.

    4 points
    • Mattan Ingram, 2 years ago

      I guess I should keep refining my JS skills.

      Haha most of the designers I know would be horrified by your last sentence, but deep down I agree.

      1 point
    • Florian Schulz, 2 years ago

      Used to call them web designers 10 years ago.

      0 points
    • Tyce Clee, 2 years ago

      No.. no no no. Designers, frontend designers / UI developers and frontend developers / JS engineers are 3 entirely separate fields of work / people. They're all working in tandem as exceptionally good specialists but they are not the same.

      0 points
  • Jon MooreJon Moore, 2 years ago (edited 2 years ago )

    In my personal experience, you have to start at the source of the problem: universities.

    I am a senior product designer and spend 90% of my time doing designs in Sketch, and 10% of my time occasionally supporting dev teams who don't have [the right] UI dev talent.

    But my formal degree is in computer science.

    My story is an odd one, because I'd always been fascinated with design, but figured it would be hard to make a career out of it, so I went into CS instead, always keeping up with design on the side for some beer money through college.

    Throughout four years of instruction at one of the top universities in the country for computer science, I had ONE lone project where HTML/CSS came into play, and they didn't even really grade against it. Outside of my university's CS program, there is a separate department called "computer information technology" where students learn things like Photoshop and generic web development, but even there they don't really teach HTML/CSS.

    I haven't done a comprehensive search, but my inkling is that it's simply not taught [at any sort of depth]. DOM positioning is really not that difficult of a concept, but "full-stack" developers still can't figure out the difference between absolute and relative positioning. In product design, this is unacceptable. Frameworks can only get you so far.

    As far as hiring goes, there's a level of what I call "nitpixeling" that's required to perfectly translate mockups into code, so ideal candidates will be sticklers for design, but know the best techniques for translating it into code.

    How do you find these people? I look at portfolios and try to find evidence of obscure CSS knowledge. Font-smoothing, transforms, CSS-based animation, flash-of-unstyled-text (FOUT) performance remedies, and out-of-the-ordinary layouts. I'm talking unconventional layouts that you don't find in a framework.

    Call it highly specific, but to me, these are signs of a UI dev who not only knows what they're doing, but will search for solutions to make things look right.

    Look for self-proclaimed "Web Developers" and dig into the source of their portfolio site and/or projects they've worked on. People who advertise themselves as "Front End Engineers" are usually just Angular/React/Polymer wizards, but only competent in HTML/CSS. You've gotta look for the evidence that it's more than just competence.

    3 points
    • Mattan Ingram, 2 years ago

      Yeah I'm going the route of just looking at portfolio code now. So many template based portfolios...

      1 point
  • Tiago DuarteTiago Duarte, 2 years ago

    I find myself on the other side of the spectrum, where it's hard to find companies looking for someone specialised in CSS/SASS/HTML.

    I thought about calling myself a UI Engineer/Developer, but I've come across people who claim to be so and they generally are designers with some UI development skills, so I kept "Front-end Developer".

    I guess this is all due to the huge rise of development in JS and since it's all technically part of the "front end", there's definitely a lot of confusion. This situation actually increased my interest even more in expanding my knowledge of JS. And I'm sure a lot of beginners a few years back got caught in this gold rush for JS skills and focused right on that, not caring too much about CSS.

    Side note: it seems like you're looking for a full time engineer. If that changes and you're interested in working with a freelancer, hit me up! hello [at] tiagoduarte [dot] com

    3 points
  • Siddhartha Gudipati, 2 years ago (edited 2 years ago )

    I'm a recent grad with a CS and HCI degree. I love doing UI dev & UX design. When I was trying to find a job after graduation I realized that UX Engineering positions are not that popular and Its hard to find the position.

    So, either I had to brand myself as a Front-end Developer(JS/Angular/Ember etc.) or an Interaction Designer(Just do pure design and leave the rest to Engineering team) to find a job.

    And also I was told that(this may not be completely true), UI/UX Engineers are generally paid less than Interaction Designers/UX Designers. And also UI Engineers in some places are branded under UX Designers are seen as people who build what designers say. I would love to know more thoughts about this.

    So to check that I did an Front-end dev internship at a decently big company and realized that how less they cared about design. Which made me to brand myself as an Interaction designer moving forward even though I get paid a lot more as a developer.

    And not to mention, I know a ton of UX Designer who are really good at UI Dev they understand OOCSS, SASS or paint times etc. But they don't brand them self as a UI Dev.

    And I guess with the increasing number of new tools and techniques makes us focus less on CSS, for example frameworks like Angular 2, React, Polymer.

    To conclude though I'm really love doing UI Dev. I had to brand myself as a Designer to land on my dream job. That being said I satisfy my UI Dev craving by doing side project on the weekends.

    Yes, there can be lot of people thinking UI Dev is not the coolest job or they don't get paid much. May be you should change the job description a bit and let the people know that they are equal to any other designer/developer.

    I would really love to know everyones thoughts on this.

    3 points
    • Mattan IngramMattan Ingram, 2 years ago

      I like the idea of emphasizing equality with other roles on the development team.

      I was a bit offended when my company decided to replace my senior role with a junior one, and it was quite clear that they do not realize the amount of knowledge that goes into really good CSS. I'm paid fairly well but not because I'm a dev, more because I wear like five hats and have been at the company longer than anyone but the founder.

      This has inspired me to make a point about this at work tomorrow, thank you.

      2 points
  • Philip AmourPhilip Amour, 2 years ago

    I wonder as well. I personally do CSS/LESS/SASS & HTML as well to help out our front-end engineer (who hates to do it himself and prefers to focus on react/the framework itself.) Even tho I was told I am doing pretty well, if I change the job I probably won't put it on my CV as it's not something I would want to do every day. I prefer to focus on Design and Prototyping rather than 'hack around' with ancient technologies that take ages to adapt new things and were not designed with todays needs in mind.

    That said I am really interested to hear thoughts of other people as to my understanding these 'web ui designers that implement their design and get corrupted along the way' are pretty rare creatures.

    2 points
  • Diego LafuenteDiego Lafuente, 2 years ago

    Can this position be remote?

    2 points
    • Mattan Ingram, 2 years ago

      Unfortunately no, I will discuss remote possibilities with the team, but I'm pretty sure we want someone in-house.

      0 points
      • Diego LafuenteDiego Lafuente, 2 years ago

        I don't see the point on being there. Do CSS/HAML and other things are pure execution rather than grupal research. You can have this part done remotely very nicely, if you workflow is defined (ex. Github code review, Basecamp, Jira, etc.)

        D

        0 points
        • Mattan Ingram, 2 years ago (edited 2 years ago )

          I actually completely disagree. I don't like the approach of speccing out a feature and just having someone else execute. We are a startup of around 25 people with only a few devs and one designer. We don't have the luxury of doing multiple mockup iterations, perfectly speccing it, and getting someone to do CSS to match the pixels.

          Saying CSS/HTML are just pure execution completely undersells the complexities of user interaction, the changes that happen when a design actually becomes interactive, and the feedback you get from your team as they start using the prototype.

          I usually am simultaneously mocking things up and coding the initial prototype, and then we iterate on the prototype and a lot of decisions are made during that process that can significantly change the feature. We don't have the luxury of having something finalized/tested/specced before building it. Design and development are essentially one team here, and they are a lot better for it.

          I find a lot of discussions about web development don't take into account small startups with limited resources. We have an enormously complex and polished web app and we do it without any of the crazy number of steps other people go through.

          2 points
          • Martin BavioMartin Bavio, 2 years ago (edited 2 years ago )

            All you have said is correct. Which doesn't mean that it can't be done remotely. :)

            0 points
          • Diego LafuenteDiego Lafuente, 2 years ago

            bq. Saying CSS/HTML are just pure execution completely undersells the complexities of user interaction, the changes that happen when a design actually becomes interactive, and the feedback you get from your team as they start using the prototype.

            Excuse me, sir, but being a good coder doesn't mean you can't demo the power of CSS/HAML, things can be improved, but in my opinion, you will never discover a gold mine by being present in a room. You will discover the goldmine when you really dig into the problem and offer a good solution.

            1 point
    • Ray SensebachRay Sensebach, 2 years ago

      +1

      1 point
  • Joshua ButnerJoshua Butner, 2 years ago

    "CSS is declarative, so it should be easy and anyone can do it. And while we're at it design is just making things 'look good.'"

    This is the message I've received loud and clear from 99% of the people looking for my help over the 11 years I've been web-working. Can you hear how salty I am?

    Honestly, like others have said, if there was more demand for people with a focus on these skills, you'd find them. But as it stands everyone wants an expert in some other domain who will at some point "just handle" the CSS.

    On your end, limiting yourself to local-only possibilities isn't doing you any favors, as well.

    2 points
    • Mattan IngramMattan Ingram, 2 years ago (edited 2 years ago )

      I hear you and share similar salinity levels, I will be talking to my team about remote positions.

      0 points
  • Kev Rowe, 2 years ago

    Things change in the classic 'frontend' role so fast now that the top-level trends need to be conveyed to those in hiring positions more regularly. In my previous digital agency I moved from being a backend dev (C#) to being a bit of a hybrid, doing most of the JS work. The company was unaware this JS-focused role existed until I requested to fill it and even then I was just considered a frontend dev by most.

    Fortunately there was an understanding between myself and the 2 other frontend guys that they were the CSS guys and I was the JS guy so we had a decent spread of skills and could use each other for advice if not pass work around.

    There's now such a huge area of expertise in SVG, animation and 3D that it's another whole new role if there's enough work; it's voodoo to me as someone who is pretty nifty with JS and SCSS.

    1 point
  • Spencer HaizelSpencer Haizel, 2 years ago (edited 2 years ago )

    You've asked a question here that really needs to be looked into further by developers, designers, agencies and the like. Fortunately we work in an industry which is ever-evolving but with this new roles and titles are always being created.

    1 point
  • Nicole DominguezNicole Dominguez, 2 years ago (edited 2 years ago )

    These kinds of designers most likely already have great jobs, don't live in New York, or aren't willing to work full time. I just moved from NYC but half of my time there was spent as a freelancer. I actually found it difficult to find a front-end development position that was mostly geared towards modular Sass, styleguides, large-scale css, etc.

    1 point
    • Mattan IngramMattan Ingram, 2 years ago

      Yeah this is a good point, and also something I have found to be true of NYC startups.

      0 points
  • Tyce Clee, 2 years ago

    Matt, this is definitely a thing.

    https://pages.18f.gov/frontend/

    18F champion this role extremely well and it's one I align to also. It's extremely difficult to find this particular, niche role in companies out there but I can attest to a select few that support it (alongside a JS dev).

    1 point
    • Mattan IngramMattan Ingram, 2 years ago

      This is a great resource, thank you! Definitely passing this along to my developers.

      0 points
  • Mike BusbyMike Busby, 2 years ago

    This is the struggle my company faces and as do many others.

    It's an area thats starting to gain more attention, people are starting to specialize as there is a need for it, it's always been treated as just something JS devs need to do to, but a good majority of them don't put the effort in here as they are usually engineers, UI development is an art, the same way design is. You need the eye to do that kind of work, and this is why I am a strong proponent of designers being UI developers. They should be the same role, after all you are designing software, not a picture in photoshop or sketch.

    1 point
    • Mattan Ingram, 2 years ago

      I am in full agreement. I'm doing my best to convince them that you can't just spread CSS responsibility across JS devs and expect the same level of polish or coherence as having the people who actually designed the feature build the interactions and the style framework.

      0 points
      • Mike BusbyMike Busby, 2 years ago

        Yes exactly, the simple truth is the position is different, its a design type job. It's visual. Sure learning "code" (lets be real, CSS / HTML isn't code) is hard to do, and is very difficult to master and use at scale, but I think thats just a necessity digital product designers have to learn.

        1 point
        • Mattan IngramMattan Ingram, 2 years ago

          I try to tell designers that CSS isn't that scary, it's just like object or layer attributes in Illustrator or Sketch. There is a lot to learn, but the basics are straightforward and mostly in plain English.

          That being said, we need someone who knows more than the basics.

          0 points
          • Mike BusbyMike Busby, 2 years ago

            This is the big problem, even with other engineers (js, back end, etc)

            While it's easy to learn and use at a basic level, it's surprisingly hard to use at scale or build very complex components

            0 points
  • Julio Marroquin, 2 years ago (edited 2 years ago )

    I'm exactly what you're looking for and would definitely move but I don't have a worker visa =(

    0 points
  • Lewis FludeLewis Flude, 2 years ago

    hi

    0 points
  • Mark Horgan, 2 years ago

    CSS can be very tedious and difficult - it's probably not as bad on webapps (as apposed to websites) because you're not churning out a new project every few weeks. It's not appreciated and not particularly paid well so I'm not surprised that there is not many specialising in it. I find JavaScript development easier. A lot of the time in CSS you're searching for some "trick" to make the design work in all the different scenarios. The CSS toolkit is very poor especially when it comes to layout but that's changing with new CSS layout technologies but it will take time for them to be supported by all browsers.

    0 points
    • Mattan Ingram, 2 years ago

      CSS toolkit really isn't that poor, you just need to know it well. I find most JS devs don't actually know CSS well, thus they go looking for "tricks" rather than actually solving the problem properly.

      1 point
  • duantao 段涛, 2 years ago

    cvv

    0 points
  • Tyler Cecchi, 2 years ago (edited 2 years ago )

    Seeing as you are looking for someone to replace you, and you call yourself a Product Designer, shouldn't you be looking for other Product Designers and not UI Engineers? Although like others have said CSS is sort of an ancillary skill to front-end development or design. I don't know many people who specialize in it simply because the demand for that specialization is not high and the scope of work is somewhat limited creatively if you don't own the design itself. I don't know anyone who would want to specialize in CSS but not be involved in creating the design. Your best bet might be looking for a designer who has great CSS ability.

    0 points
    • Mattan IngramMattan Ingram, 2 years ago (edited 2 years ago )

      That is what I would like, but I also can't find it. Someone who is BOTH a good designer AND a good CSS writer sounds amazing. Where do I find them? Most of the designers I see focus on mockups and prototyping, not coding up the feature (and that's fine, just not what I need).

      We are a startup with limited resources. I am both a product designer AND UI engineer. I do mockups, and then I code them up in HTML/CSS with JS help from the front-end devs.

      0 points
      • Daniel De LaneyDaniel De Laney, 2 years ago

        We exist! I don’t know anyone willing to move to NY, but if you’re open to remote I have a couple of names for you.

        2 points
        • Bryce HowitsonBryce Howitson, 2 years ago

          Agreed we do exist! But being a Unicorn means you get to be really picky.

          Personally moving my family just so I can stare at a computer screen in the office instead of home/coffee shop/beach is a deal breaker.

          The sooner organizations embrace remote work (esp for things like this) the sooner they'll discover the massive amt of talent that really does exist.

          6 points
          • Philip AmourPhilip Amour, 2 years ago

            Completely agreed on this. I'm in a similar position - currently working both full-time on-site as well as part-time remotely; however, I'll be definitively looking for a remote role after my full-time is over.

            Ignoring remote means that you will have to pick from much smaller pool of talent just for the convenience of having someone physically sit with the other people in the office. I've experienced much more communication problems in on-site roles than in all of my remote career. I wish more companies would embrace remote and stop associating it with outsourced cheap labor and low quality work.

            1 point
  • Vitor FernandesVitor Fernandes, 2 years ago

    Maybe you can look for UX Engineers.

    https://www.google.com/about/careers/jobs#t=sq&q=j&li=20&l=false&jc=USER_EXPERIENCE

    0 points
  • Artur MaklyarevskyArtur Maklyarevsky, 2 years ago

    R E M O T E . Huge talent pool. That's why i moved to Buenos Aires. Now i have access to really great unicorns who work in EST... and will cost you a lot less. hit me up if anyone wants to work together : artur @ design2dev.com

    0 points
    • Mattan IngramMattan Ingram, 2 years ago

      Unfortunately remote development often relies on just being handed a specced out feature and then handing back code, it doesn't allow for the day-to-day even hour-to-hour iteration we have in our product development. Our developers and designers work hand-in-hand across the table from each other allowing for much more dynamic and fast-paced development.

      If someone suggests something, I can mock it up and write the HTML/SCSS myself within an hour to prototype it while continually discussing it with the team. This doesn't seem as feasible with a remote dev.

      0 points
      • Artur MaklyarevskyArtur Maklyarevsky, 2 years ago

        i humbly disagree. Working in the same timezone, on Slack + Screensharing does the same thing. But yes, face to face cognitive transmissions do have some additional value. Not worth the extra $ in most cases.

        1 point
  • Dana (dmxt)Dana (dmxt), 2 years ago (edited 2 years ago )

    I'm an expert on both design and interface front-end development (HTML5 & CSS (SCSS) & JS libs use). That's how I advertise myself, which is a fit for your search. However, remote only.

    0 points
    • Mattan IngramMattan Ingram, 2 years ago

      Yeah it sounds like there is a large amount of remote talent, however the way our product is developed we don't just hand off specced out features to developers. Our designers (me and one other, and I write all the HTML and SCSS currently) iterate constantly hand-in-hand with the developers.

      I suppose a full-time remote position who was always available in Slack or over video chat could be feasible, but I would have to convince my team of it.

      0 points