rw-book-cover

Highlights

  • Sometimes called a design technologist or creative technologist, the user experience engineer is a developer that plays in the space between creative and development. (View Highlight)
  • Their ability to quickly produce functional prototypes will allow your team to get critical stakeholders and user feedback early in the design phase at a time where it can be properly dealt with and tested. (View Highlight)
  • Each product team, which is dedicated to a feature or application, is structured into three distinct groups. There’s the UX team which consists of roles like UX designers, UX managers, UX researchers, UX writers, and occasionally a UX engineer. (View Highlight)
  • Then there’s product management who’s responsible for the priorities and strategy of the product. (View Highlight)
  • And lastly, there’s engineering who are responsible for building and supporting the applications. This triad is meant to work together to produce the best possible product. (View Highlight)
  • Simply put a User Experience Engineer is a developer on a UX team that applies engineering to support UX efforts. (View Highlight)
  • They build functional prototypes for a limited audience. (View Highlight)
    • Note: responsibilities of UXE
  • They can build something functional quickly in any language, platform, or API required for the project. (View Highlight)
  • They are a proper member of a UX team and they are managed by a UX lead (not an Eng lead). (View Highlight)
  • They build functional prototypes, proofs of concept, and internal design tools. (View Highlight)
  • They serve as technical consultants to UX teams as the voice of engineering in all UX meetings. (View Highlight)
  • Conversely, they serve as UX consultants to the eng team and help the team think through eng decisions that can affect the UX. (View Highlight)
  • They are the mediator between eng and UX and they thrive in the messy, always changing space of developing new ideas. (View Highlight)
  • What a UXE is not (View Highlight)
  • UXEs are often conflated with a front-end engineer. (View Highlight)
  • A UXE is writing code in a prototyping environment to support a design effort. (View Highlight)
  • A front-end engineer is writing secure, scalable, reusable code in a production environment. (View Highlight)
  • UXE Responsibilities (View Highlight)
  • Functional Prototypes (View Highlight)
  • Prototypes bring an idea to life in a way that design mocks cannot. (View Highlight)
  • most valuable uses of the prototype is for user research. (View Highlight)
  • The higher fidelity the experience is you put in front of users, the more valuable and accurate the feedback will be. (View Highlight)
  • A UX Researcher will be able to help define the success metrics and ways to test them using a prototype. (View Highlight)
  • So the UX team and UXE builds a prototype, the UXR tests it and you then know how effective the experience is in solving the problem. (View Highlight)
  • Through prototyping, the risk for trying things decreases dramatically, therefore as a product team you’re better positioned to innovate. (View Highlight)
  • Platform Validation (View Highlight)
  • These platforms have restrictions/limitations that will affect the UX. (View Highlight)
  • Having a UXE allows the UX team to explore these and iterate on them independently from engineering. (View Highlight)
  • Proofs of concept (View Highlight)
  • When discussing a user experience and the systems involved a UXE will sometimes need to build a proof of concept to determine if an idea is even feasible to pursue. (View Highlight)
  • Internal UX tools (View Highlight)
  • UX teams need to occasionally build internal tools to improve their UX process. (View Highlight)
  • so the UXE is there to build plugins or integrations for Photoshop, Figma or Framer that are specific to your needs. (View Highlight)
  • Tech representation in all UX efforts (View Highlight)
  • UXE is there to remind the UX team how the systems they are designing for generally work. (View Highlight)
  • It allows the UX team to deal with these limits internally and not have to waste Eng’s time presenting designs that won’t work. (View Highlight)
  • “The Eng team doesn’t want to build this part of the experience because of X” or “The UX team doesn’t think this Eng idea is good for users because of Y” (View Highlight)
  • The UXE, being an engineer on the UX team is in a unique position of understanding both sides and coming up with novel solutions that will fulfill the needs of both parties. (View Highlight)
  • Prototypes need to be fast and agile and a lot of the time the production stack just doesn’t support that. (View Highlight)
  • The role of the prototype is to get to the best possible designed experience quickly. That means building things in a quick, messy way using popular 3rd party libraries that may not be supported in the Eng production stack. (View Highlight)
  • So yes the prototyping code will not be usable directly by the engineering team but that’s how it’s supposed to work. (View Highlight)
  • The UX team needed to design an AR experience that would properly guide the user in the correct direction towards their destination. (View Highlight)
  • (View Highlight)
  • Google maps app showing how the blue dot indicating the user’s location is wrong (View Highlight)
  • The UXEs then built functional prototypes from those designs which were used in user research sessions. (View Highlight)
  • (View Highlight)
  • Animation showing more than 12 different user experiences trying to direct a user from point A to point B (View Highlight)
  • An important thing to note here was that these prototypes were not built in the normal application stack of Google Maps. They were built entirely in Unity. (View Highlight)
  • (View Highlight)
  • The Final design of the Google Maps AR Experience (View Highlight)
  • I spend my time developing to support UX design, research and technical efforts much like the Google maps example. (View Highlight)
    • Note: This should be my answer in future when someone asks me what I do