As part of my first software engineering job, which was at a manufacturing firm, my manager granted me freedom to choose what I wanted to work on. Little I knew that that meant independently identifying business needs and then crafting solutions. As a novice in the software engineering realm, I lacked the guidance and mentorship typically offered to newcomers. Instead, I was thrust into a role where I was expected to create my own work. In general, those skills are characteristic of mid to senior level engineers. I spent the following months observing mechanical engineers and technicians. I meticulously observed their routines, pinpointed their pain points, and identified the repetitive tasks that were consuming their time. Six months into the role and I prototyped a computer vision solution that automated visual inspection of freshly assembled medical devices. I wrote it fully in C++ using the OpenCV library, with unit tests and proper documentation. My prototype quickly garnered attention and piqued interest, evolving into a full-scale solution that significantly reduced the manual labor required, saving us tens of hours each week. This experience taught me valuable lessons about embarking on new projects and joining teams: 1️⃣ Observe and Inquire: Start by closely observing and asking questions. Take diligent notes as you go along. 2️⃣ Identify Pain Points: Understand where the team is struggling the most, and recognize the areas in need of improvement. 3️⃣ Propose Well-Considered Solutions: Suggest solutions with well-thought alternatives. Be prepared to present your ideas effectively. 4️⃣ Execute and Deliver: Put your plans into action, and ensure your implementation aligns with the team's needs. Following these steps will allow you to become an organizational asset and propel your growth. This journey not only honed my technical skills but also imparted crucial insights into the dynamics of software engineering and problem-solving in a real-world context.
How to Develop Structured Problem Solving Skills
Explore top LinkedIn content from expert professionals.
-
-
Interviews in tech are more about communication skills than they are about technical skills Of course, you need some technical knowledge, otherwise you can't handle trivia questions. But if you can't articulate how you used your knowledge or skill, you'll struggle to move on. Over the years, I found the most helpful tool for job seekers is structured problem solving. It took me years to understand what that meant. It's a thing people talk about but don't explain. Maybe they don't want to? Maybe they can't? All it means is you have a repeatable process to solve problems. An algorithm, if you will. For example: IDEATE I: Identify problem D: Define goals E: Explore strategies A: Analyze tradeoffs T: Test a strategy E: Evaluate results Now put it into practice. Here's how: Talk out loud This is the awkward part of the interview. Most people think quietly. Alone. Now's not the time. Speak your mind. Recap what you know Repeat the question in your words. Break down the requirements as you understand them, include assumptions and open questions. Write things down or diagram It's hard to keep all this stuff in working memory (i.e. your brain, which is your RAM). Plus, you might need a flowchart or punch list. Check-in with your interviewer Confirm you're in sync. Ask if your assumptions are fair (the f-word). Ask questions when you get stuck. They want to know how you think. -- #techjobs #jobseekers #interviewtips #interviewprep
-
“What is the problem statement?” - Based on my experience the key to properly solving a problem is to truly understand what exactly the issue is. This could appear obvious, however, for some organizations it is very difficult to master. Using a customer quality concern as an example, by utilizing a systematic approach to problem solving the following are a few things to consider: 1. Ensure that all relevant information is available for the team to consider – this is extremely important - Engage your customer and if necessary the supplier in the initial phases of the investigation/data collection 2. Properly contain the issue: - Too often team members will overreact and begin taking what is believed to be an effective containment action to later discover that it was not which amplifies costs and customer dissatisfaction - It is however, very critical to work with speed during the initial phases to minimize exposure 3. Internally establish a cross functional team with a project leader. Problem solving can’t be left up to one department or person 4. Go to the “Gemba” where the work is done. Problems can’t always be solved or attempted to be solved in a conference room 5. With the right data, people, process (e.g. 8D) and facilitation of meetings the permanent corrective actions will follow. Trust the process but be relentless through it 6. Follow up, follow up, follow up – changes made from the corrective action should be inspected multiple times until confidence is established through a sustained duration Finally, this does not pertain to only customer, supplier or manufacturing process issues. TRY IT – the next time you are having an internal meeting to discuss a “problem” of any type be a demanding partner and ask “What problem are we trying to solve?” – it’s amazing the difference of opinions that will surface and align everyone to a common goal. As always thanks for the comments and IM’s to my posts and feel free to reach out. Darren
-
When people come to us with a problem, it is tempting to provide an instant answer. After all they came for our expertise and there is nothing so rewarding as getting a dopamine hit in our brain when we know the answer. Ahhh. Such fun. However, the path to accountability is filled with asking good questions and creating space for others to think and solve rather than us providing answers. Often just by asking the questions below, an individual will have a breakthrough and discover a solution on their own. FOCUS QUESTIONS ON THEIR INSIGHT These questions can be applied to executive meetings, coaching employees, and solving our own problems. 1. What is the problem you are trying to solve? It is so tempting to skip this step, but it is essential if you want to create ownership. I find I have to help people step back from their need for a quick answer and help them understand the context of their problem. When you help them frame the problem, the problem is often half solved. 2. What are the main obstacles to solving the problem? Gaining context to where and how the problem exists provides guidelines for what the eventual solution will be. Without this clarity, they can create an overly simplistic or complex answer. 3. What have you already tried? Avoid the temptation to jump in and give advice. They don’t need it. Most people have already done a lot of thinking and attempts before asking for input. 4. What happens if you don't solve this problem? This question helps create a deeper sense of urgency and ownership. It also reveals key issues that the final solutions will have to solve for. 5. How would you know you succeeded? The answer gives the parameters and evidence needed to know a solution would be a success. Without this answer, their solution is unlikely to meet all the needs. 6. What do you think you need to succeed? The focus is on the individual’s ability to think and act. They are creating answers for the future. They are becoming better problem solvers and being more accountable. MAKE SPACE As I ask these questions, I work hard to not fill in the silence with my insights. I do have ideas on what they should do. But I will never make them more accountable if I keep sharing my expertise. Each of us can create a more accountable workplace by the space we create to help others think. How do you create more accountability? embrace your #pitofsuccess Dave Ulrich Neil Hunter Tracy Maylett, Ed.D. Tyson Lutz Destanee Casillas, MSOD Gwendolyn F. Turner Lisa Strogal, MBA, MCC, RYT Vanessa Homewood Tia Newcomer Clint Betts Chris Deaver Gina London Joy Moore Kendall Lyman
-
I feel like I've started to sound like a broken record, continually telling folks to solve for the problem, not the discomfort. What do I mean by that? Not everyone sits in a role or team that can see the "big picture" or the dependencies involved around an issue. It's our job to gather business requirements and conduct root cause analysis to determine what the right solution for the business problem is. Remember, we barely have enough time to do it once, let alone have to go back and redo a second or third time because we solved for the discomfort instead of the problem. With that in mind, here are my 5 reasons you need to know the problem to solve it: 1) Avoid Ineffective Solutions: Jumping straight to a solution without fully understanding the root causes of the problem can lead to ineffective or incomplete solutions. The solution may address surface-level symptoms but fail to resolve the underlying issues. 2) Align Perspectives: Different stakeholders might have varying views on the core problem. By exploring the problem collaboratively first, you can get alignment on the true nature of the challenge before proposing solutions. 3) Encourage Creativity: Coming with a preconceived solution can limit your thinking and blind you to better alternatives. An open exploration of the problem fosters a creative environment where more innovative and effective ideas can emerge. 4) Avoid Overconfidence: Proposing a solution before understanding the problem comes across as presumptuous. It signals you may not fully appreciate the nuances and complexities involved from others' viewpoints, causing defensiveness and resistance. 5) Build Stakeholder Buy-In: Defining the problem collaboratively ensures stakeholders feel heard and involved. They are more likely to support solutions they helped shape from the outset. #ProcessImprovement #LearningAndDevelopment #BusinessRequirements #CriticalThinking