UI Architects are developers that deeply specialize in all things related to frontend. They should have expertise in JavaScript, its frameworks & tooling, as well as software patterns. They can build anything with pixel perfect accuracy in HTML & CSS in a clean, semantic, and accessible manner. They should be deeply familiar with all the different approaches for how to organize and handle large/complex CSS. They may be called upon to help with a specific team, or work on code that can be used across teams. They’re familiar with UX patterns and terminology and can work and communicate with UX Researchers, Designers and Developers, and act as bridge between them. They tend to work across teams and disciplines.
Below we outline the core responsibilities of people in this role.
Code
UI Architects are expected to write and work on code, primarily used across teams within an organization. This includes libraries (CSS libraries, component libraries, utilities), tooling (linting, testing, building, documenting, deploying, etc), boilerplates, open source contributions to resolve 3rd-party issues, and more. The product of these efforts results in speeding up development, improving the developer experience, reducing rework across teams, and leads to an overall more consistent user experience.
Besides shared code, UI Architects may be pulled in to help with code specific to a single project or team. Such as rare events that members of the team may not feel comfortable doing as it is outside of their day-to-day work. Work that requires niche and rarely useful knowledge, not worth training others on. Or work with a much higher than normal level of complexity. Examples include setting up a repo for the first time, updating dependencies in old repos, code migrations, automating tasks, CI/CD/deployments, advanced optimization techniques, etc.
Consultation
UI Architects must be extremely knowledgeable in all things related to frontend development. They should be seen as a resource who assists in solving problems when others are stuck, gives advice or direction, and explains concepts or niche aspects of UI work.
A team may need help planning out large projects like migrating a code base between technologies (build tools, testing frameworks, frontend frameworks, state management libraries, etc). They may want counsel and recommendations around adopting a technology that is new to the team. UI Architects should be able to speak from experience, but also in an unbiased way, pointing out the situations that make technologies most useful, and the pros and cons of any potential technology choice, pattern, or approach.
Having this expertise internally also allows giving context of what internal resources exist for a choice that would make it more beneficial to adopt. Internal resources may be preexisting libraries compatible with the choice, or experts within the organization that could be tapped for assistance in the future.
A UI Architect should contrast choices to similar alternatives. Ultimately this is guidance, not rules. Teams can use this summarized information to make the decisions they believe are best for their team and the project. Even if it is differs from what the Architect would have chosen, or what other teams have chosen. Teams choosing to go in a new direction will have a harder time, but also are more likely to innovate, and may be trailblazers to allow others in the organization to follow in their steps.
Communication/Context
Part of the role of a UI Architect is to be a bridge between UI, UX, and PM roles. They should champion the needs of developers to designers, while also explaining the reasoning behind designs to developers, when a different approach is needed.
They provide and convey the context in either scenario so that the right corners are cut to make a deadline, or so that the same user outcome can be reached with a different design that could be developed in less time. They don’t need to be an expert in User Experience Design/Research, but they should be able to speak the language of those in the UX field. Being able to effectively communicate with Project/Product managers, UX Designers, and Frontend developers is key to being this bridge. Understanding the goals of each of these groups and helping to balance them and find solutions with the fewest compromises, and where expectations are managed realistically.
The difference between UI Architects and UX Architects
There is a lot of overlap between these roles. While both have technical frontend expertise, a UX Architect will work closely with UX Designers and UX Researchers. Where as a UI Architect primarily works with Frontend and Full Stack Developers. UIA will tend to have more software and library development experience. UXA will have more design and UX experience. But this isn’t a clear and defined line that both fall on opposite sides of. It can often be fuzzy and the requirements put on those in these roles are very dependent on the organization they are in.
Photo Credit:
Smolensk fortress wall by Anastasiya Romanova
Source link
lol