6

I am about to start a long project where the end-goal is to overhaul the UX of a very niche product: Public Key Infrastructure (PKI). The first part of the project is a 4 week long pre-study, research only.

The company is comprised of (pretty much only) Java developers and the software reflects that: functional, but ugly as hell and hard to use.

I'm coming in as a consultant and need advice on how to include the developers in the research process and make them feel a part of UX, not threatened by it.

Any advice?

3
  • Doing some good UX can actually make the Java developers lives easier. especially if you have a good style guide that sits over the top of what they are doing and they dont need to worry about things like CSS
    – Andrew
    Jan 12, 2017 at 12:11
  • 1
    CSS will eventually be handled by a Front End developer, I'll provide requirements, guidelines and mockups. I know I can make their lives easier (and they mine), just want to make sure they are not on the defensive.
    – codeWolf
    Jan 12, 2017 at 12:14
  • 1
    The front end dev team is usually not the problem. I've seen places where (1) the Java developers (and in my experience, it always seems to be Java coders) provide a terrible mockery of HTML markup (2) they dismiss any problems it creates by saying they are too busy to fix something that is "just markup" and (3) they won't let anyone else touch "their code" to fix it either. And (4) they somehow get away with all that.
    – Tim Grant
    Jan 12, 2017 at 16:28

3 Answers 3

2

I work with a lot of Java developers. Most finally acknowledge that they are not really interested in the UI, but it took some work to tease this out them.

As well as inviting them to watch some usability tests, and gathering usability data to back up my design direction, I had to create html/CSS versions of what I wanted (and looked a million times better), to illustrate that this is what you need produce.

However, the biggest result was involving them in the design process - make them feel like they are contributing to the design,and your solution will go where you need it too. You might need to make the odd concession here and there, but the results will be worth it.

Its the soft skills that UX designer often use to get what they need.

2

I have the same problem as I'm the sole usability engineer in the company and the rest are Java developers. They feel threatened because they think they have to code unnecessary or "fancy" functionalities.

Gather user data and present it

To convince developers that the proposed features are valuable you should present user research data. The key is to use data to convince them your suggestions are not based on personal opinion. It will be great if you can present your findings frequently: every week or twice a week. This way programmers will be acquainted with the research. Hopefully, they'll take into account some user problems.

Programmers can be convinced a feature is worthy of developing by presenting them:

  • videos of user tests - showing them users struggling with the interface is maybe one of the best methods of influencing developers. This approach worked well for me.

  • statistics - presenting objective data, like time to complete task, should work well as tech engineers work a lot with numbers. Use different charts and visualization for higher comprehension

  • comparisons before and now - by comparing efficiency of new components vs old, or new interface vs old is great. They can see the gains that could be achieved.

  • academic refences - if you can show that your design is validated by previous academic research. This way you show tou are not the one that invented it worked really well for me.

Be positive and prepared

Programmers will often try to deny development of functionalities which will take a lot of effort. You should expect that and be prepared with arguments. However, try to sound positive and sustain a healthy dispute. Don't lean towards negative emotions. Listen developers, respect their opinions and gently tell them your view. Your communication ability and presentation skills will determine the success of your endeavor.

Create a user-centric culture, if possible

If you want to have long-term adoption of User centered design you should create a culture of testing with users. This is surely the best thing to do for the long-term success of that company.

However, I don't see how you could create user-centric culture when you are only a consultant for a couple of months. This is a long process and it takes many years.

0

The problem with Java developers and UX is that most of Java frameworks I tested relies on a weird interpretation of the MVC model and requires a lot of infrastructure to be built to make a single form.

I am a Java developer myself in a position that allow me to decide which architectures will be used. I am still using PHP for the presentation layer.

The first app I did for the company had the presentation layer in servlets. Another developer had trouble understanding the Java code and I scaled back to PHP. Years latter I tried again, made a small system with a presentation layer in Java which is online still today, but other developers finds difficult to master it. While that PHP presentation layer grew much.

I even ported one of my apps to jsp, jspx, faceless, struts, js and turbine as an architectural proof of concept and did not feel confidence in them. Too much work without real gains against my PHP reference architecture.

My advice is to avoid complex frameworks and look for tools and concepts that make the developement cycles faster so that you can focus all your energy on improving the functionalities instead of dealing with plataform specific issues.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.