8 answers
Asked
939 views
As a software developer how do you take and use user feedback into your process, and how does it affect what you are working on?
I'm in 10th grade and I'm doing a project on software developers which is a career I'm interested in going into in the IT field.
Login to comment
8 answers
Updated
Ivan’s Answer
Hi Jaiden! This is a great question. If you have the time, I suggest you learn a little about Design Thinking - https://www.ibm.com/design/thinking/
My shorthand view of design thinking is that you need to start with the user(s) - what are their pain points, what do they want to accomplish and so on. You also need to realize that in most cases *YOU* are not the user - you are focused on the software design and implementation, whereas the users are focused on getting their problems solved.
My approach is to get users involved as early in the process as practical, and to keep them involved throughout the work. If you are headed down a wrong path, it is best to "fail fast" - learn earlier rather than later. I also suggest having multiple users with diverse backgrounds involved with review and requirements.
When you get feedback, listen with an open mind and not emotionally. I know it is your work someone is criticizing, so it takes effort to hear the negative things people say. Allow time in the process to adjust your work based on what you hear.
I hope this is helpful - I'm excited that you are looking into this field.
Learn about design thinking - https://www.ibm.com/design/thinking/
My shorthand view of design thinking is that you need to start with the user(s) - what are their pain points, what do they want to accomplish and so on. You also need to realize that in most cases *YOU* are not the user - you are focused on the software design and implementation, whereas the users are focused on getting their problems solved.
My approach is to get users involved as early in the process as practical, and to keep them involved throughout the work. If you are headed down a wrong path, it is best to "fail fast" - learn earlier rather than later. I also suggest having multiple users with diverse backgrounds involved with review and requirements.
When you get feedback, listen with an open mind and not emotionally. I know it is your work someone is criticizing, so it takes effort to hear the negative things people say. Allow time in the process to adjust your work based on what you hear.
I hope this is helpful - I'm excited that you are looking into this field.
Ivan recommends the following next steps:
Updated
david’s Answer
User feedback is vital, if a project is to be successful. This is important because what the users say is important is often not what interests developers. Whereas developers are anxious to introduce a new feature, users are more interested in having the current product work as specified. That is, developers prefer developing vs maintaining. To users, maintenance so that the product works consistently is paramount. Developers must listen actively to this feedback, finding that their priorities need to focus on what lets the users be productive. New features that were not requested are rarely appreciated. Until developers accept and embrace this, they will feel disappointed in user acceptance. That's a great question you asked. All the best to you.
Thank you for taking the time to help.
Jaiden
James Constantine Frangos
Consultant Dietitian & Software Developer since 1972 => Nutrition Education => Health & Longevity => Self-Actualization.
6342
Answers
Gold Coast, Queensland, Australia
Updated
James Constantine’s Answer
Hey there, Jaiden!
You know, back in 1994, I kept hearing the same thing from my patients. They were fed up with the one-day sample menu plans that most dietitians were handing out. They felt it was a bit of a letdown because it required them to sift through about seven different food groups and pick out what they wanted. They didn't enjoy creating their own menus; they really wanted ready-made menus for 1 to 2 weeks! That's when the idea of unique menu-generation software came into play.
Well, I worked day and night to produce that software! The MPH Course Coordinator failed my project for a "financial conflict of interest" and the Dietitians' Association gave me no recognition because they thought I was trying to replace the dietitian-nutritionist with a computer!
Wishing you all the blessings in the world!
James.
You know, back in 1994, I kept hearing the same thing from my patients. They were fed up with the one-day sample menu plans that most dietitians were handing out. They felt it was a bit of a letdown because it required them to sift through about seven different food groups and pick out what they wanted. They didn't enjoy creating their own menus; they really wanted ready-made menus for 1 to 2 weeks! That's when the idea of unique menu-generation software came into play.
Well, I worked day and night to produce that software! The MPH Course Coordinator failed my project for a "financial conflict of interest" and the Dietitians' Association gave me no recognition because they thought I was trying to replace the dietitian-nutritionist with a computer!
Wishing you all the blessings in the world!
James.
Updated
Jeff’s Answer
Hi Jaiden,
This may be the best question I have ever seen on CareerVillage! So many developers don't seem to care about user buy-in. But it is critical! If your application is not user friendly, it won't be used. The users will find ways to avoid it and work around it.
My favorite was to sit down in a room with my users, at least a small set and go through the process. Here is what the app will do. This is the process. Basically walk them through it. As a developer, you tend to have tunnel vision. Back in the stone age, developers would yell over the wall to other developers and ask them if the design was user friendly. I started a program where all Dell Dimension developers were required to sit in on tech support calls to see the frustrations of our users. It was truly eye-opening!
Actually, we need to define user. In some cases, it's an end user and hopefully, you have access to them. Never, ever take criticism personally. It's what works for them. Another set of users is the marketing and/or sales team. That's a little more difficult to deal with because they often don't really understand their user base. I've also had management directed products. That was usually a disaster!
I always tried to put myself in the user mindset. And, I had the perfect model. My mother, who was absolutely brilliant and had a PhD but was completely computer illiterate. I would think about how she would deal with this application or this computer.
Always think about your end users and make sure you focus on their needs!
Again, awesome question!!!
ALWAYS think about your end user!The person who will use your product!
This may be the best question I have ever seen on CareerVillage! So many developers don't seem to care about user buy-in. But it is critical! If your application is not user friendly, it won't be used. The users will find ways to avoid it and work around it.
My favorite was to sit down in a room with my users, at least a small set and go through the process. Here is what the app will do. This is the process. Basically walk them through it. As a developer, you tend to have tunnel vision. Back in the stone age, developers would yell over the wall to other developers and ask them if the design was user friendly. I started a program where all Dell Dimension developers were required to sit in on tech support calls to see the frustrations of our users. It was truly eye-opening!
Actually, we need to define user. In some cases, it's an end user and hopefully, you have access to them. Never, ever take criticism personally. It's what works for them. Another set of users is the marketing and/or sales team. That's a little more difficult to deal with because they often don't really understand their user base. I've also had management directed products. That was usually a disaster!
I always tried to put myself in the user mindset. And, I had the perfect model. My mother, who was absolutely brilliant and had a PhD but was completely computer illiterate. I would think about how she would deal with this application or this computer.
Always think about your end users and make sure you focus on their needs!
Again, awesome question!!!
Jeff recommends the following next steps:
Updated
Luna’s Answer
Hey Jaiden,
Your question is spot on! It's absolutely crucial for software engineers like us to value user feedback. It's the fuel that drives the roadmap of our projects, don't you think?
I gather from your question that you're knee-deep in a project, with several features already planned and delivered to your users. That's fantastic! Now, when you've collected user feedback, the fun part begins. You get to sift through them, identify their essence and categorize them. You might find categories like:
- requests for new features
- suggestions for improving existing features
- reports of bugs that need fixing
Once you've got your feedback neatly sorted, you can start weaving it into your future plans. Prioritize these tasks (tools like Trello or Jira can help you visualize and organize your backlog). Use your product decision-making principles to gauge the impact of these changes. Then, you get to decide what deserves your attention next. Perhaps you need to squash some critical bugs to keep your users happy, or maybe it's time to roll out a new feature to keep them engaged. The choice is yours!
If you're already working on something, compare the impact and urgency of the user feedback with your current task. Set aside an hour every week to review all the feedback and decide the priorities. Once you've decided, shift them to an appropriate spot in your backlog and return to them when you're ready.
Remember, it's good practice to respond to your users promptly, even if you can't immediately implement their suggestions. It's just as important to close the loop and let them know your decision so they feel acknowledged.
I hope this advice serves you well. Best of luck with your project!
Develop a product decision making framework and prioritise work items based on impact and urgency
Your question is spot on! It's absolutely crucial for software engineers like us to value user feedback. It's the fuel that drives the roadmap of our projects, don't you think?
I gather from your question that you're knee-deep in a project, with several features already planned and delivered to your users. That's fantastic! Now, when you've collected user feedback, the fun part begins. You get to sift through them, identify their essence and categorize them. You might find categories like:
- requests for new features
- suggestions for improving existing features
- reports of bugs that need fixing
Once you've got your feedback neatly sorted, you can start weaving it into your future plans. Prioritize these tasks (tools like Trello or Jira can help you visualize and organize your backlog). Use your product decision-making principles to gauge the impact of these changes. Then, you get to decide what deserves your attention next. Perhaps you need to squash some critical bugs to keep your users happy, or maybe it's time to roll out a new feature to keep them engaged. The choice is yours!
If you're already working on something, compare the impact and urgency of the user feedback with your current task. Set aside an hour every week to review all the feedback and decide the priorities. Once you've decided, shift them to an appropriate spot in your backlog and return to them when you're ready.
Remember, it's good practice to respond to your users promptly, even if you can't immediately implement their suggestions. It's just as important to close the loop and let them know your decision so they feel acknowledged.
I hope this advice serves you well. Best of luck with your project!
Luna recommends the following next steps:
Updated
Ricardo’s Answer
What a fascinating query you've posed! In the world of software development, there are a multitude of strategies that companies use. The importance of user feedback simply cannot be overstated. The software lifecycle is a journey with many stages, and communication is the key to navigate it. It's essential to be in sync with your customer during the initial stages of preparation and planning before you dive into coding.
The design phase is a crucial one, it's like a blueprint that's crafted based on the requirements gathered from your customers and industry experts. As you move into the development phase, it's extremely important to incorporate QA/Testing activities. This helps not only in spotting errors or bugs but also in understanding if the software is functioning as per the customer's expectations.
If there's a mismatch, don't worry! Changes can be made until the software performs as desired. In this exciting process, your customer's satisfaction is the ultimate goal. So, keep the communication lines open, embrace feedback, and remember, perfection is a journey, not a destination.
The design phase is a crucial one, it's like a blueprint that's crafted based on the requirements gathered from your customers and industry experts. As you move into the development phase, it's extremely important to incorporate QA/Testing activities. This helps not only in spotting errors or bugs but also in understanding if the software is functioning as per the customer's expectations.
If there's a mismatch, don't worry! Changes can be made until the software performs as desired. In this exciting process, your customer's satisfaction is the ultimate goal. So, keep the communication lines open, embrace feedback, and remember, perfection is a journey, not a destination.
Updated
Jason’s Answer
User feedback is essential to good software development. You want to make sure what you are developing works for who you are designing it. Not only from a workflow prospective, but also from the usability prospective. Think about about when you purchase something online using a shopping cart. Some are very easy and simple to use from end to end, while others may be easy to add items, but if you want to edit your cart before you checkout become a nightmare. You not only want software that can do what you want, which would be to purchase the item in the example above, but you also want software that will make that task effortless so they will do it without getting frustrated and will be able to do it again when needed so they keep coming back and don't go with a competitor. User feedback helps ensure you are doing this and aren't missing any scenarios or experiences that would cause such frustration. It allows you to expose those areas of concern and decide if they are worth fixing vs. the cost to develop the fix.
Updated
Meenakshi’s Answer
Dear Jaiden,
Collecting user feedback is essential for a software developer, even though it may introduce a delay in the development process. Initially, I was eager to rapidly introduce multiple features to enhance the product's value. The significance of user feedback became clear to me when, after investing months in development, certain features remained unused. In larger organizations, developers often lack direct exposure to client feedback. The feedback-gathering process involves cycles within higher management, causing delays as they prioritize and relay the feedback to developers. The development priorities always keep changing as more user feedback is incorporated into the product. This seems as an inconvenience to the developer but despite this hindrance to the development cycle, the ultimate objective is to create a product that resonates with and is accepted by the end user. Once you get a hang of it, the process likely becomes smoother and quicker with your users guiding the developed features which is an ideal scenario satisfying both the user and developer. Wishing you all the best for your project!
Collecting user feedback is essential for a software developer, even though it may introduce a delay in the development process. Initially, I was eager to rapidly introduce multiple features to enhance the product's value. The significance of user feedback became clear to me when, after investing months in development, certain features remained unused. In larger organizations, developers often lack direct exposure to client feedback. The feedback-gathering process involves cycles within higher management, causing delays as they prioritize and relay the feedback to developers. The development priorities always keep changing as more user feedback is incorporated into the product. This seems as an inconvenience to the developer but despite this hindrance to the development cycle, the ultimate objective is to create a product that resonates with and is accepted by the end user. Once you get a hang of it, the process likely becomes smoother and quicker with your users guiding the developed features which is an ideal scenario satisfying both the user and developer. Wishing you all the best for your project!