Talent Development Centre

Tag Archives: problem solving

All Talent Development Centre posts for Canadian technology contractors relating to problem solving.

Problem Solving Tips for Cracking Coding Interview Questions

Job interviews come in all forms with different goals. Recruiters typically want to know that you’re qualified, have the necessary experience, and that you’re presentable to a client. Once interviewing with your client, you’re more likely to be meeting a hiring manager who has in-depth technical experience and they may test you to ensure you can back up your claims.

We’re increasingly hearing about developer interviews that have a whiteboard component or some sort of challenge where the candidate must solve a coding problem in front of the interviewer, discussing how they’re coming to their conclusions. If you’re currently preparing for one of these interviews, or anticipating one in the future, check out this insightful video from CS Dojo. It provides multiple strategies for solving a coding problem and advice on how to work through and explain your solutions in a job interview.

Can You Solve the “Seven Planets” Riddle

It’s Friday, so why not take a break and solve this Seven Planet Riddle from Ted-Ed. Getting the answer doesn’t have to be just about getting the answer, solving riddles is a fun way to keep your brain sharp.

Riddles also let you improve upon your problem solving skills. The key to solving a problem is simplifying the issue to better understand it and using deductive reasoning, no different than when IT contractors find solutions for clients. So take a stab at the riddle and see what you come up with!

The Troubles Tree – A Parable

Kevin Dee By Kevin Dee,
CEO at Eagle

This post first appeared on Eagle’s CEO Blog on July 13th, 2012

I thought I would try something a little different with today’s blog … and would like to give credit to the website Parablesite.com for this story.

The Troubles Tree - A ParableA carpenter was having a tough day. It started with a flat tire that cost him an hour of work, his electric saw quit, and now his ancient pickup truck refused to start. While I drove him home, he sat in stoney silence. On arriving, he invited me in to meet his family. As we walked toward the front door, he paused briefly at a small tree, touching the tips of the branches with both hands. After opening the door, he underwent an amazing transformation. His tanned face was wreathed in smiles and he hugged his two small children and gave his wife a kiss. Afterward, he walked me to my car. We passed the tree, and my curiosity got the better of me. I asked him about what I had seen him do earlier. “Oh, that’s my trouble tree,” he replied. “I know I can’t help having troubles on the job, but one thing for sure, troubles don’t belong in the house with my wife and the children. So I just hang them up on the tree every night when I come home. Then in the morning, I pick them up again.” “Funny thing is,” he smiled, “when I come out in the morning to pick them up, there aren’t nearly as many as I remember hanging up the night before.”

Growing up I was educated in Catholic schools and often they used parables to make a point …so they are certainly not a new invention, and perhaps not even trendy.  For some people they may even seem a little “hokey”.

The interesting thing about how people learn is that we are all a little different and different styles of learning will work for different people.  If the visualisation of a parable can help to drive home a point then it seems like it could be a good tool!

This parable has a number of messages … all of which you have heard before:

  1. The extent of your “problems” is largely governed by your attitude.  (Its mostly in your head)!
  2. You can let problems overwhelm you or you can actively “put them in their place”.
  3. It is possible to have a great home life, even if things at work are not going so well … and vice-versa.  When you let one overwhelm the other then you are really just making it all worse.
  4. Very often what seems like a big problem doesn’t seem nearly so bad later.
  5. Remember what is most important to you and protect that … .you really don’t want your family to remember you as “the grouch”.

How to Handle Scope Creep: 5 Scripts You Can Use Now

This guest post by Justine Smith originally appeared on the Freshbooks Blog on July 16th, 2015

YHow to Handle Scope Creep: 5 Scripts You Can Use Nowou find yourself in the middle of a project, completely overwhelmed by the copious amount of client requests. It feels like you’re drowning, and the entire project is sinking along with you.

In the midst of your despair, there’s good news: you can stop it.

Most of the time, these feelings come from a sneaky little thing called scope creep. I can’t even begin to count the times it’s happened to me. And if you’re reading this article, then I’m sure I’m not the only one.

Today, I’m going to share five scripts that I’ve developed while struggling with scope creep. I’ve found that they’re very effective when explaining the situation to clients.

  1. Stay Vigilant from Day One

You’ve gotta learn how to outsmart scope creep.

As a project manager, I’ve got to handle scope creep at every turn. It requires saying yes or no as soon as a request comes in. Getting into this habit can feel pretty daunting at first.

In my freelancing days, scope creep really creeped me out. I’d just take on the bit of extra work in fear of losing the client if I said no. That’s a dangerous game to play, trust me. You’ll end up overworked by trying to accommodate dozens of small tasks that add up to a monstrous headache.

Next time a client sends a request and you need to say no, use this script:

“I’m sorry, but I’m not able to add in that feature/component/service based on the scope of this project. Would you like to setup a time to discuss expanding our project scope and budget to accommodate this new feature?”

  1. Offer Logical Solutions to the Problem

I’ve found that scope creep rarely happens in huge leaps. It’s the little requests here and there that add up. And clients will keep making requests until you say no. Can you really blame them? Who wouldn’t want to get every ounce of work they can for the money?

That’s why project management requires such diligence.

If you’re diligent, it may mean that you find yourself saying no more than you’d like. And if you’re anything like me, you hate saying no.

So, instead of a downright refusal, I oftentimes take a roundabout approach to scope creep. The approach looks something like this:

“Our current agreement is for [current terms] at [agreed cost]. From what you shared, you’d like to add [scope creep request]… I’d be willing to do that for [new cost based on additional request]. Or if that’s outside your budget, we can just stick to our original terms.”

  1. Always Refer Back to the Project Requirements

Now, this requires actually outlining project requirements in the beginning with your client. I’ve made the mistake of working without project requirements clearly documented. And it’s a mistake every time.

At the beginning of each project, I take time to clarify goals and objectives. This is the initial planning stage. And it saves me from a huge headache down the road.

It’s important that I balance my timeline, bandwidth and resources against the project’s complexity. This helps me define the functionality of specific deliverables. Deliverables get broken down into tasks and milestones.

Ultimately, this sets clear expectations of what I deliver in a project.

But despite my efforts to outline everything, scope creep still happens. And sometimes, it’s easiest to simply point clients to the documented project requirements. Here’s a script for that scenario:

“I’m happy that you’re so excited about what I’m doing that you want to add more. Unfortunately, what you’re asking goes outside of our original project requirements. I’ve attached them to this email for your convenience. Should we discuss expanding the budget and project requirements? I’d be happy to meet with you later this week.”

  1. Develop an Approval Process for Scope Change Requests

Like I said before, I’m not a huge fan of saying no. As a business professional, this made my life pretty difficult for a while. Some days I felt like the only word I used all day was no.

It left me feeling pretty discouraged.

And then I realized that I shouldn’t feel so much pressure about making this decision. In fact, I shouldn’t feel any pressure at all. Like every other aspect of the project, it’s my job to manage, not execute.

That’s when I realized the power of a project scope change management process. I don’t use it for every decision, because there are some things that require an easy yes or no. But I use this system when it comes to larger requests. And it works like a charm.

Now, a client or client manager comes to me with a scope change request. Instead of feeling the pressure of making a yes or no decision on the spot, I use something like this:

“Thanks for sharing this great idea. I can see why you’d like to add it into the project. Something of this magnitude needs to get the approval of our project sponsor, though. I’ll need to pitch the idea to him. Please shoot me an email back with the following information: the new capabilities/functionality, the business value of the change, and any consequences that could occur if we don’t make the change.”

  1. Protect Yourself from Gold Plating

Gold plating happens when you continue to work on a project or task, even though you’ve already met the outlined requirements. I’ve done this before, and it comes from a good place. But you shouldn’t keep working past the scope you’ve discussed with the client.

That’s right, scope creep doesn’t just come from clients. You and I can fall victim to it too.

I once worked with a marketing team that never had a dedicated project manager. It was up to the team to work together and get things done on time. As you can imagine, it became a nightmare.

But out of all the issues, gold plating caused the biggest issue. Developers ran wild making big promises outside the scope of the initial project. At the end of the day, the business took a turn for the worse. Why? Because the project wasn’t profitable due to the extra time spent gold plating.

If you run a team, you must teach them how to manage project scope. Here’s a simple script to combat a team member that’s easing into scope creep:

“Wow. It looks like you’ve been hard at work. I appreciate your diligence to this project, it’s very encouraging. Now, this may seem silly, but please don’t go above the call-of-duty too much. It’s important that we don’t stretch outside the bound of our initial project requirements. (If you haven’t seen them yet, I’ve attached the document for you.) Again, thanks for all your hard work. You rock.”

Those are five scope creep scripts you can use today. As project managers, freelancers and business owners, it’s important that we manage this important aspect of business.

Do You See Problems or Solutions?

Whatever your position in life you will take pleasure from success.  There seems to be one consistent factor when dealing with successful people — they find ways to overcome the barriers in their way.

In other words, the best way to achieve success is to focus on how to get it, not on why you can’t do it.  So if your habit is to focus on the problems and why you can’t achieve the success you want, then you need to change that thinking.  Instead you need to step back and look at what you could possibly do to achieve your goal.  Here are some tips:

  1. Keep the end in mind. Don’t focus on the problem or barrier, instead, focus on the Mend result.
  2. Brainstorm. Write down every thought you might have about how to get to that end result no matter how outlandish.
  3. Set Small Goals. If the goal is BIG, then try to develop interim goals.  If you set a goal of becoming the lead project manager on a multi-million dollar project but have no project management experience, you might want to start with taking a few courses in that area!
  4. Collaborate. When you have crystallized your goal in your mind and have some thoughts about how to get there, talk to others.  Two heads are better than one, and the more people discussing and brainstorming the issue the better.  For example, if you have a business issue, involve your peers and anyone else you think might be able to bring ideas to the table.  Do NOT underestimate the creativity of the junior members of your team.
  5. Focus. All of this needs to happen with a total focus on the issue.  You cannot be doing this in between your regular tasks, the next big deadline etc.  Set aside dedicated time; it doesn’t need to be days but perhaps an hour or four!
  6. Humility. Don’t think you need to have all the answers.  Give credit to those who do help.   Be willing to help others when they need it!
  7. Believe!  If you don’t believe that you can succeed then your chances are dramatically reduced.  Everything is possible you just need to find the key!

Success — whether it is winning a new contract, learning a new skill, or even achieving a level of fitness — is achievable.  It takes work, it takes commitment and it takes a little courage. Are you up for it?

Sometimes The Simple Answer Is Right

There is no need to over complicate life, yet often that is the way things go. Technology is a wonderful example of how, just sometimes, we can over complicate life. The answer to a client’s business challenge is often as simple as a change in process, or a very simple manual calculation, yet too often they leap to designing complex technology solutions, which of course add bells and whistles (because you are developing it anyway)!

If we can easily get the answer to a question without a lot of grief, is it worth the effort and cost of developing a complex solution?

This concept can apply to almost any aspect of our lives. Let’s look at a typical contracting problem.

When having trouble finding work, independent contractors may take extra steps like creating a new website, bypassing agencies and applying directly to a complex supply arrangement, or even considering a move to a new location. Very often, the answer may be simply reworking your resume, doing some extra training and calling more recruiters.

Don’t get us wrong. Technology is great and out-of-the-box thinking like the ideas above keep it simpleare often a great way to grow your business. Solutions just don’t always have to be that complex!

Keeping it simple is not just a strategy that you can take to your business, but you can also use it when helping clients through their business problems.  Here are a few questions you might ask yourself next time you are wrestling with how to solve a problem:

  1. Do I truly understand the problem or am I looking at the symptoms?
  2. Have other people already solved this problem?  (Ask!)
  3. What is the most basic solution?
  4. Does adding technology or extensive time/financial investments make the solution appreciably better?
  5. Is there a measurable return on my (or the client’s) investment if I opt for the more complex solution?  Will the solution yield enough benefits to warrant the costs?
  6. What happens if I don’t fix the problem? (sometimes the “problem” is really an inconvenience, rather than something worthy of your time)
  7. Are all of the pieces of the puzzle working effectively but the results are not right?  Or is it possible that the “problem” is more fundamental?
  8. Have I really given the situation some thought, or have I jumped to conclusions?
  9. Who do I know that can help me work through the potential answers?

Keep it simple! As an independent contractor you already have many tasks and stressors from running your own business to serving your clients.  Do you really want to add to that with unnecessary, complex solutions?

How do you ensure you’re not over-complicating things?  How do you deal with clients who insist on excessive solutions?  Share your thoughts in the comments section below!