Just like each design challenge is different, the process to solving those problems will vary as well. Factors such as time, resources, and budget always contribute to the path I take when working on a project. However, as a general rule I like to adhere to the following phases; Define the Problem, Research, Ideate, Design, Validate, and Repeat.
When starting a project I always think of it in terms of what is the problem we are trying to solve. To answer this question, it’s important to have a kick-off meeting with the product team and stakeholders to get a brief on the problem and business requirements. This is also a chance for me to ask questions about any data or previous findings we might have on hand and get a better understanding of the users needs.
After the kick-off meeting I’ll start the research phase. From a quantitative standpoint, this is when I can look to current data, run A/B tests, and perform competitive analysis, to get more insights. From a qualitative standpoint, this is when I will observe the users in their natural environments and/or perform user interviews. When designing, it's crucial that you know your audience, their behavior and their needs.
This is the phase where I flesh out initial concepts. Ideating alone or with a group is dependent on the amount of time I have to complete the project. However, I highly recommend holding a collaborative UX workshops if there is time as they produce great results. At the end of this phase, deliverables may consist of a collection sticky notes, user journey map, sketches, etc.
Next I’ll gather any findings from previous steps and work my way up in fidelity, starting with sketches and then moving to interactive prototypes, checking in with stakeholders and users along the way. This approach guarantees that I’m not putting too much effort into the small design details and can focus on the functionality. When prototypes are final, I’ll create a simple test plan to validate my hypothesis.
With so many methodologies for user research, it's important that you pick the correct one for the project at the correct time. I've worked on projects where we have done multiple rounds of usability test, surveys, A/B tests and other projects where I only had time for quick guerrilla testing. The bottom line is, you don't know what your users want and need till you ask them. Validating early and often is a standard best practice.