UI Architect required – The job opening caught my attention. I was a bit curious to understand what UI Architect really means and what they do? I know Solution Architect, Technical Architect, Principal Architect, but UI Architect was a very new term to me.
For most of the people, UI is restricted to HTML, CSS, few designing tools, graphics, and animation. It feels like with few colors, fonts, and pictures are all required to define perfect User Interface. We now have buzzwords like UX (User Experience), UI Designer etc. but then why this new role is required?
In the recent past, User Interface has really caught attention. A strong ecosystem of tools and thoughts has emerged around building appealing and efficient User Interface. The Strong User Experience is no more luxury, it must be treated equivalently to service architecture (or more commonly known as backend).
Information presentation is a key aspect to retain customers and win over the competition. So there is a strong need to create a perfect framework and develop a set of practices to streamline the User Interface development. Hence before we try to understand UI Architect Role, lets first understand what UI/UX means.
Wikipedia has a nice definition around UX
User Experience (UX) refers to a person’s emotions and attitudes about using a particular product, system or service. It includes the practical, experiential, effective, meaningful and valuable aspects of human-computer interaction and product ownership. Additionally, it includes a person’s perceptions of system aspects such as utility, ease of use and efficiency.
This simple definition reveals that User Experience requires studying user’s behavior – how they respond to certain situations? What triggers a person to click a particular link? What makes them spend more time on your site? What catches their attention? How information has to be organized? The list will just go on… but the important point is, none of this demands knowing a designing tool.
The designing tool comes in later part. A UX person must have a deep understanding of Users and their behavior. Creating questionnaires, interacting with users, monitoring their behavior, the tastes & preferences based on the geographical location etc is what User Experience role demands.
Churning out as much as information is a key aspect of User Experience. All these efforts create sufficient input for a User Designer to translate the ideas. So when User Experience does all the job of collecting information and UI guy gives it a shape then, why there is need of an Architect.
Why UI Architect is required?
I came across following Job Description for a role of a UI Architect.
– Candidate should exhibit continuous improvement by using tools and frameworks in the market.
– 10+ years of hands on experience on front end technologies.
– 4+ years of architect experience on Angular, React, or other open source or commercial frameworks.
– Strong knowledge of MVC framework and the tools speeding up front end development.
– Experience of CI/D pipelines, modern deployment and release methodologies including automated configuration and provisioning at scale.
– Very strong in performance testing web apps using tools like Gatlin.
– Should architect and implement secure code.
– Provide end-to-end ownership of solutions delivered to meet requirements, delivering the platform architecture required to realize both functional and non-functional capabilities
Browsing a few more openings, lead me to a conclusion that most of them had something similar requirements. Lets put these into the following bucket
- Knowledge of Tools and Framework
- Hands-on Experience
- CI/CD practices
- Testing tools
- Performance tools
- Security awareness
If we exclude specific framework names the expectation from UI Architect seems to be similar to an API/Service Architect. So why there is a need of having a separate role of UI Architect? To understand it better we must look at key expectations from a UI Architect.
Strong Understanding of Frameworks/Tools
This is an essential part of every software development. While every framework/tool has its own specialty, picking up an appropriate framework is a key factor. UI Frameworks list has never been so much rich than before. Prior to JQuery era, we had a handful of libraries to do the job.
An architect must be capable to choose an appropriate framework based on the application size, target users, community support etc. Moreover, there is a need to make the integration between different components as flexible as possible.
Don’t choose framework because you already know it.
Unit testing is no more restricted to API and services. Most of you may be already familiar with the frameworks like chai, Jasmine, Mocha, PhantomJS, Karma and many more.
These are not fancy names or buzzwords to showcase how many stuffs you know. Most of these frameworks are essential for building robust UI. A UI architect must promote a culture to implement test-driven UI development.
We have seen a tremendous change in the Internet services provided by the telecom industry. The data rates have literally slashed to such a level that everyone can now easily afford to have 4G connections.
While the Internet speeds have increased, the usage of these services has equally increased too. People are using applications with heavy data requirements. An architect must understand the user behavior, geographical restrictions, age group etc and shouldn’t take data speed for granted.
Similar to data speed, things hold true for Hardware requirements. We are in the era, where there are thousands of mobile manufacturing companies coming with a wide variety of handsets. Each handset differs in terms of processing speed, display, user response, screen size, and many other factors. All these environmental variations require a UI architect to think from different dimensions.
For most Microservices feels like a term that belongs to Backend architecture. Most of the business applications have a combination of both UI and services. While everyone desires to implement Microservice architecture, UI seems to be often neglected. This has serious implication when developers start full-blown microservices architecture along with UI.
Fortunately, there is also a revolution happening in the User Interface world. It would be difficult to explain all those terms, but frameworks like web pack, or architecture concepts like SCS (Self-contained systems) can truly help to develop modularized UI.
A UI architect must pay attention to these cutting-edge practices and bring value to the business by providing agility.