Tag Archives: ui developer skills

How to Become a UI Developer

After sharing my post describing what a UI Developer is, I got some requests to write another post specifically about how to get a UI Developer job. It’s certainly not an obvious path. My first job out of college was working for my alma mater in the Art Department media lab, during which time all I knew was that I wanted to transition into web development.

UI development is a mixture of design and programming, which is a pretty good option for a creative coder. When I first got interested in programming I didn’t know positions like “UI Developer” even existed. After that I had a few short term positions where I was focused on just getting my foot in the door. I had some free time and decided to look into various types of UX design courses. I already had a degree in Visual Arts from college, so I thought maybe if I ended up hating being a programmer, UX design would be a good alternative At the time I didn’t know what working in the tech industry would really look like, so I didn’t want to put all my eggs in one basket.

I ended up settling on an Interaction Design certificate offered by UC San Diego through Coursera. It was a series of six courses that taught you how to run A/B tests with different designs, how to conduct research and interviews to figure out the sort of problems users are facing, and how to use tools to speed up the design and testing process. 

Here is a screenshot for the homepage of the Interaction Design Specialization I enrolled in.

The final course was a capstone project where students had to actually put into practice everything they had learned and create a high fidelity mock-up for a mobile app. What the app was and the problem it solved was completely up to the student. It took me a year to complete the series of courses since by that point I had landed my first software engineering job. It’s hard to say how much of a difference the certificate made in terms of landing my first UI Developer role later on. If I had to guess I would say it was equal parts my Visual Design degree and the certification.

Here are some of the high fidelity mockups I made in my capstone class.

The Interaction Design certification helped me gain more confidence and allowed me to add a significant design project to my portfolio. However, it’s hard to say how much my Visual Arts degree played into the employers decision to hire my for my first UI Developer role . The reason why I say that is because frankly, most software developers do not come from creative backgrounds. I knew at this point that I had a solid foundation in software engineering because I had worked for 8 months at a startup using Angular. That made my art degree like the icing on the cake, and the certification kind of like the cherry on top.

When my husband got admitted into law school in DC, I applied on a whim to a Data Visualization Developer position and got the job without even needing to fly there. While on the surface the title of Data Visualization Developer doesn’t sound like it necessarily involves user interface design, you could tell by reading the job description that it did. Basically the company wanted someone who could draw mock ups for widgets inside of a data visualization application and do research on how they might work best, while also actually developing the widgets and doing other front end work. 

I went to college in Oberlin, Ohio. This is a description of my major.

That particular position did not give me any sort of UX assessment as part of the interview process, though they did ask about my certification and Visual Arts degree. Unlike standard software engineering positions where you can usually expect a coding test of some sort, UI Developer positions have a wide range of tests. Sometimes they will give you a mock up of a website and ask you to code it. Other times they might ask you how you would go about creating an application for a specific purpose, or what you might do to improve the design of an existing application. They might even have you sketch out interfaces on a white board.

One position I applied for gave me a simple form with a poor user interface and asked me to code a new version that would be better. In this case I misunderstood the instructions and ended up not getting the job. I thought that I wasn’t supposed to touch the code that was already there and that it would be breaking the rules, but in order to change the form input (which was what made the UI terrible) that was a necessity. That is the other tricky part about UI developer positions. It’s easier to misunderstand the instructions if you are given a test that you’ve never had before, or that breaks the paradigm of what you would expect.

!EMPTY!

One of my earlier hand drawn wireframes for my app about finding yourself.

It also makes it more difficult to give concrete advice on how to pass a UI Developer interview. If you have any doubts at all, it is best to ask. You might get asked about any education you have in the past, or any portfolio pieces that involve user experience design. You might also get asked to demonstrate your coding skills whether through an online test or something more akin to a standard software engineering interview.

Honestly I wouldn’t be surprised if some jobs hand out a take home test where the interviewee must redesign and code a landing page or something of the like. One UI position I interviewed for actually had me sketch out wire-frames on the white board, live code some CSS, fill out a pen and paper test with programming questions, and solve additional programming problems on the white board with another developer. There was no way I could have predicted what all the assessments would be ahead of time.

The only way to really start getting comfortable with the process is to apply to some jobs and see if you can get any interviews. Depending on how much user experience design skills the job actually requires, you might not even be asked to prove those skills at all. The hiring manager might be satisfied with any past design education and ask a few simple questions, and that could be it.

Oftentimes I have found that UI Developer positions still care more about the software development technical skills than design skills. It is another thing to keep in mind if you are more interested in getting UX experience or don’t want to spend more than a few hours a day coding. Make sure you read the job description carefully, and also ask lots of questions in the interview about what your day to day work will look like. I would hate for anyone to end up in a job they hate because the title said UI Developer but in reality they only get one design assignment per month and the rest of their time is spent on awful legacy code.

Another assignment from my capstone, where I had to draw a storyboard demonstrating the problem my app would solve.

Another frustration that is common among UI Developers is that they get hired in companies that don’t have a lot of design resources. That might mean you are the only design advocate in your organization, and it is easy to have your voice drowned out. Being assertive is oftentimes required or else you might get frustrated very quickly having to execute poor user interfaces and feeling bitter at your coworkers.

With those warnings aside, I still recommend considering UI Developer positions if you are the type of person who enjoys both coding and design and like to interface with people on both sides. Make a portfolio website, show off some UX and coding projects, and try to land some interviews! I wish you the best of luck.

If you enjoyed this article, consider following me on Twitter @nadyaprimak or if you need more tips on breaking into the tech industry, you can read my book “Foot in the Door”.

What is a UI Developer?

The world of technology is a complicated one. With titles like “rock star”, “ninja,” it can be hard to take job descriptions seriously. It doesn’t help that many hiring managers ask for ludicrous credentials. Is a UI Developer a real thing? Maybe they have job descriptions like this:

The number of requirements in this job description can be reminiscent of UI Developer jobs
Could you also fly us to the moon?

Job descriptions for UI Developers can look like the one above. Like full stack developers, UI developers are expected to be familiar with more than one area of expertise. While full stack developers know frontend and backend, UI developers are familiar with the front end and how to design user interfaces. In some cases they also know how to conduct user research. I like to call them “creative coders.”

Don’t take the excessive list of requirements seriously. It’s like the hiring manager’s letter to Santa Clause. Don’t do yourself the disservice of not applying because the requirements seem excessive. The person who wrote the job description has nothing to do with the people you will be working with.

I know a lot about being a UI Developer because it has been my title throughout most of my career. When I got my first job with that title I had about a year’s worth of experience with AngularJS. In addition, I had a game portfolio illustrating my programming skills, a certification in Interaction Design, and a bachelors degree in Visual Arts. It might seem like a lot, but I had two years to build my game portfolio and four to complete my degree.. during which I only look about 12 credits worth of actually programming.

There were jobs in which I was doing the work of a UI Developer without the actual title. Tiny startups usually used the title of “Software Engineer.” It didn’t matter to me, because the important part was that I was getting to do the work that I loved. In the long run I worked at a lot of smaller companies. At big companies such positions rarely exist, because hiring managers can afford to hire specialists for everything.

At this point I could rant about how specialists are perceived to have more value than generalists in the American job market. Luckily, Emilie Wapnick discusses that in her TED Talk about multipotentialites with much more eloquence than I could.

This is the outlook many hiring managers have on “generalists” even if its really just a handful of skills like design and front end development. They think that the quality of the work will suffer.

Even though it is less common for large companies to hire UI developers, that doesn’t mean that such positions never crop up. For example, I was hired as a contractor for Deloitte to work on a project that involved customizing an application for an existing client. The application was focused on data visualization and had a number of complex and confusing widgets. They wanted someone with a design and front end skillet to make those widgets simpler.

Downsides to being a UI Developer

Over the years I have noticed some downsides to being a UI developer. The organizations which want to hire a developer with design skills don’t have any dedicated design resources. They also often think of design as an afterthought.

It can be an unspoken assumption that the UI developer will make some small improvements to the design and focus on code. If, in addition to having no design resources, the organization has few front end developers. Some companies even hire a UI Developer that they expect you to be a one person show, coding and designing everything with zero support.

Being a one person show is usually not a whole lot of fun

I don’t recommend taking on roles like that unless you really want a challenge and you like the people at the company. When you are working that hard on a project, it’s easy for resentment to build up. It will build up fast when you know the whole thing would fall apart without your contribution. Make sure you have some experience under your belt and you know what you are getting into.

In lieu of design resources, some organizations allow all of the developers to be involved in deciding what the user interface will look like. If you enter an organization like that, you may find yourself arguing with a lot of other people about every little thing. On one hand it can be invigorating at times to have to defend your reasons for making a button blue. On the other hand some developers do not have any design training,. That means reasoning with their opinion about what they find to be aesthetically pleasing can be frustrating, especially for small adjustments.

If you are considering a career as a UI developer, know that the job descriptions can be intimidating. But they are often a wish list that doesn’t reflect reality. If you enjoy working on a mix of design and coding tasks, it could be a great fit for you. Most companies that offer UI developers roles will be medium to small sized, and often don’t have designers on the team. This can lead to some downsides. Like arguing with other developers about design decisions and having to convince upper management that the design is more than some small tweaks.

If you can get past these downsides, though, I would recommend applying for some UI developer positions. Don’t forget, they can hide beneath other titles. Make sure you read the descriptions before dismissing them.

If you enjoyed this article, consider following me on Twitter @nadyaprimak or if you need more tips on breaking into the tech industry, you can read my book “Foot in the Door”.