The Art Of Problem Solving
I recently had a technical online interview that I was absolutely not prepared for and I wanted to share my experience. It gave me some time to reflect myself in third person my approach on solving problems in general. These are some common tips that you’ve probably heard before, but this is my take on it. The art of problem solving.
These are two common things on the top of my head that I do and I complete hate it doing.
I’ve been coding since 2009, but I still find myself doing this from time to time. It takes great discipline and awareness to stop this bad habit and that’s diving in without a plan or clear vision.
When someone comes up to you for advice or a problem, never just shout out the first thing that comes to mind. By giving an answer right away without knowing the whole situation could have some major consequences. In real life this could mean bad advice for your friend, or in engineering this could mean bugs, defects and cost.
Personally, I hate being put on the spot. It’s always been my personality to be anxious when the spotlights is on me. Having anxiety could be the result of feeling under pressured, lack of preparation and practice or thought of uncertainty. But it is extremely important to remain calm! From my personal experience, the outcome of being anxious leads unhappy times. Your mind starts fogging up, you feel tense, your face feels numb. Your body simply shuts down; fight or flight.
After a nice round of Drake’s IPA. I came up with an approach that can help make you a better problem solver. This list is very common, but it’s important to learn, re-iterate and to live by.
Calm and Confident
It is extremely important to remain calm. If you stray away from this first principle, in many cases it will lead you to looking like a fool in an interview, classroom presentation, date, or in front of friends.
Some of the best things I’ve done personally to keep me calm are these:
1] Controlled breathing. By having controlled breathes you are able to combat anxiety and stay in control. More air coming into the body means more oxygen coming into the body and a calm less-stressed heartbeat. This can allow you to become less tense and eliminates the foggy brain.
2] Find your flow. Make it a number one priority to get comfortable and find your rhythm. In basketball, there is a reason why good players stretch and do warm-ups and that is to find their ‘shot’ before the game starts. In an interview you can find your flow by finding a connection with your interviewer. Talk about the weather, his or her day, get excited, or make a joke. This seems counter-intuitive, but it’ll definitely help you find your groove.
Vision and Understanding
After you’re calm and have your mamba mentality flow going. It’s time to tackle the given problem.
When given a problem or obstacle it’s important to have a better understanding of what you are dealing with. Your understanding of the problem should be so clear you can see it with your eyes closed. When the spotlight is on you and the pressure is on this can be extremely difficult. This is why finding your flow and remaining calm is so important.
In order to be successful, you need to ask questions and make observations. By asking questions and making observations you’re doing your brain a favor by painting it picture of the situation at hand.
Defining and Planning
Once you have the whole understanding of the situation. It’s time to create a plan of attack. Define your variables and abstractions. The art of defining variables and abstractions naturally leads to creating solutions. For a simple example:
Your task is to find the sum of two numbers.
The abstraction would be ‘adding’. Adding is only an idea and it is not a tangible thing.
The variables would be: number1, and number2.
You have now set the pipeline to solving a problem.
Execution and Practice
Once you’ve created the pipeline for your solution all you need to do is fill in the gaps and see the outcome. From the example above this would be:
sum of two numbers = adding(number1,number2) = number1 + number2.
Once you’ve solved a particular problem. You’ll gain more and more confidence and this is why practicing is important in any field.