views:

1629

answers:

15

I broke some of the cardinal rules for hiring and am now stuck with a fairly 'bad' hire. My biggest concern is that the person's abstract thinking is really weak.

So, my question is do you guys think abstract thinking can be taught? And if so how? Or should I start preparing an exit strategy?

I'm sure some of you guys have been caught in the same predicament before, what did you do?

+11  A: 
George Stocker
How's the book so far?
fung
It's not just a cursory dive into the subject -- it has exercises and even better it has footnotes and references to a crapload of studies and other books on the subject. It's easy to read, to boot.
George Stocker
Yea, it covers many bases and even cross related to other industry, and backs everything up with research, etc. and the action part at the end of the chapter tries to wrap things up to make each chapter practical.
melaos
AWESOME book, read it a few weeks ago. Definitely worth reading! Good answer.
Chad
*Refactor Your Wetware* - sounds a little dirty, and awesome.
Rudu
+2  A: 

IMO, Abstract thinking is a matter of eliding details.

I've worked with folks who fall back on exhaustive enumeration of all the details because they're having trouble with the common features. Indeed, everything they do seems to be an enumeration of details.

When this kind of person tries to think "abstractly", they rapidly lose focus and stop creating a useful abstraction and start making random stuff up.

I think that you can work with them -- through a lot of drill and repetition -- to create usable "summaries" derived from long lists of details.

Avoid "abstraction" as a word -- their brain isn't wired that way.

Try to focus on "summarizing" common features -- they might be able to do this reasonably well, given some coaching.

S.Lott
+2  A: 

It can't be taught unless the fellow wants to learn.

mquander
At first some heavy face slapping talk is needed in order to "give him a book, or teach him". I agree. (It'll be difficult to tell him nicely)
Ronny
+1  A: 

A slightly better question might be "can abstract thinking be taught at the same time as a person who is expected to be using it in his/her day to day job is doing the job?"

I think it takes a good deal of focus and a lack of distractions to do a major brain rewiring. Like college.

I would think about whether you have any special reason to think this person can learn abstract reasoning while working for you. Look at what opportunities he/she had before your job and think whether you think this person should have learned those skills within those opportunities.

For example, evening classes for a Master's degree in CS could help this person considerably, if the education up to this point was lacking in the areas you mention.

Drew Hoskins
A: 

I am curious why the focus on abstract thinking. You can be a good developer and be a sequential thinker, as computers work sequentially. It is just a matter of trying to figure out how to explain the problem to a sequential thinker, as it will be different than an abstract thinker.

For example, if I am working with functional programming abstract programming will be less useful. In C abstract thinking may be important when using many pointers, but other than that it may be of limited use.

But, yes, it can be taught, but depending on how much effort you want, it may be easier to just change how you describe the problem.

One way to start teaching abstract thinking is to play mental games where you see how many different uses for simple elements, such as a cardboard box becoming a single-user shower. After a while you start to look at items differently, and start to draw more connections. But, this can be somewhat time consuming and may really be of limited use.

You could also have him read Socrates and discuss some of the thoughts there, as that will help to develop more abstract thinking, as you discuss fairly simple subjects, such as what is justice.

James Black
Your definition of 'abstract' seems to be a bit off.Abstract thinking includes such notions as making a function to contain repeated functionality, by seeing that the occurrences only differ in a few parameters. This is the sort of abstraction that is common to all programming today, from assembly, through C, Perl, Lisp, all the way to Prolog.
Novelocrat
Sequential thinkers can also understand iterations though, as the program goes through sequentially. In my experience EEs tend to be sequential thinkers and programmers are abstract thinkers, but, there is no reason why an EE can't be a good programmer, they just approach problems differently.An abstract thinker may be better at breaking up the problem into objects, so may be better at OOP and AOP, but not as good at FP.
James Black
A: 

There is not a magic recipe. Some people get the 'abstract thinking' in easier way than another ones. The 'abstract thinking' goes far away than programming fields.

You should be prepared to spend some time giving opportunities for learning and gaining experience with that person. All kinds of thinking comes with experience, education and willingness to learn and improve so... The conclusion is yours.

Matias
+1  A: 

as always, the answer is: it depends.

If your hire is motivated and has good attitude you can mentor him, partner him with other developers who have strong mental models for your work, give him some books to work through and develop himself.

On the other hand if he's not motivated to improve himself then you just bought yourself an important lesson in hiring staff (always favour hiring motivated, passionate people when skills are equal) and you should make sure you can let him go before the probation period is up (you did specify a probabation period in the contract right?)

the hard question is how do you figure out whether or not he wants to improve? The only thing you can do is start mentoring him and see how he responds. If he pushes back against correction then you have a dead loss, if he takes it on then you need to do a value check on what he realistically can provide, and whether the cost of mentoring him is greater than the opportunity cost of starting again. Maybe he can be more productive in an alternate role with more defined boundaries, eg tester, BA, etc

matao
+1  A: 

I haven't given it a ton of thought, but I believe there is a strong relationship between algebra and software design. In any case I trace my ability to think abstractly to a mastery of algebra.

Now you probably don't want to tell your new hire to go relearn algebra, but for a child or a young adult, I think a mastery of algebra is a key first step to this type of thinking.

In your current situation it's hard to say what to do. There are most likely some particulars here that are of import. Things you can not and should not share.

One thing I would suggest is that you think about the interview questions that you could have asked him that would preclude you from hiring another person like him in the future. We at least have to learn from our mistakes...

Meanwhile, like some others have suggested (barring no bad attitudes, etc..), maybe he can find a different place in your organization where he will be productive.

Craig W. Wright
+1  A: 

I think someone could become a better abstract thinker, with motivation, practice, and feedback from others. One book that could be quite helpful is Gerald Weinberg's An Introduction to General Systems Thinking, now out in an anniversary edition.

On the other hand, it's probably tough to effect a dramatic change in thought patterns, especially if the base abilities aren't much in evidence. Is this person a strong concrete thinker, detail oriented? If so you might look for a slot where they can apply their talents, such as project build management, test case writing, system test, lower-level documentation, debugging complex problems, operations, etc.

Jim Ferrans
A: 

Math is the Pinnacle art of abstract thinking.. so Don't tell him to go "relearn" anything.. (besides being bad for morale) Instead, figure out where he stopped on the math track. Maybe he never took Linear Algebra, or differential equations or.. ? suggest he continue on that way.

I'm probably not very good with "abstract" thought myself. Its why I like Engineering. I don't have to think "abstractly".. but I do have to be able to hold Extremely complicated systems in my head. - but attraction to complexity is a different thing.

On the other hand, folks have been telling us recently not to focus on our weaknesses: rather on our strengths. as its using our strengths that we overcome our weakness. What is his strength closest to the characteristic you'd like to see more of? encourage him to work on that.

Alternatively, If you don't like his work, he is probably not having much fun at work. You may be able to point him at a job that is a better fit. Yes even in this economy. that process may take a couple of months.

jbdavid
A: 

As humans, we’re constantly faced with myriad facts and impressions that we must make sense of. To do so, we have to abstract underlying structure away from surface details and discover the fundamental relations at work. Abstractions reveal causes and effects, expose patterns and frameworks, and separate what’s important from what’s not. Object-orientation provides an abstraction of the data on which you operate—moreover, it provides a concrete grouping between the data and the operations you can perform with the data, in effect giving the data behavior.

Roman Kagan
A: 

Bad hires only get worse over time, ime.

I'd start planning the exit.

dethSwatch
A: 

Since humans don't naturally think abstractly, it must be teachable since some of us have learned it. A linear argument to abstract instruction. The ability to do it is going to depend on the ability and motivation of both the student and the teacher. When you have someone who is set in their ways, unwilling to change or see things a different way, you're going to have a very difficult time teaching them anything.

The student must be receptive to a new way of examining problems and structures. They also must have an open mind with respect to cleansing themselves of assumptions and impossibilities. Abstract and lateral thought are practiced exercises, so it will require patience and diligence from both the instructor and the student.

On the same note, the greater burden is placed on the teacher. You have to be able to express not only the abstract idea/result you're looking for during the instruction process but how to arrive at it. You need to be able to explain the techniques you use to arrive at different thought results, and you must also be able to explain why you use them and why they work. You have to be encouraging of the student to find their own processes for achieving similar results. You have to establish a timeline for instruction, examination and success. It's too easy to give someone a book, hand them a written test and say "make it so".

This kind of re-learning thought will require daily diligence and practice on various exercises of increasing difficulty. I would recommend finding a text book or similar learning material from your past (presumably an updated version) that helped you begin to think abstractly and begin to teach directly from it through your own experiences. Then let the student's questions guide where you go.

Most important of all, don't interrupt the student's OODA loop. You can't force the light bulb to come on, you can only wait patiently for it to appear, and after enough practice it will come on more frequently and more quickly.

Joel Etherton
A: 

I'm curious, what are the cardinal rules you feel you broke and what makes him a 'bad hire'? At the risk of being voted down, keep in mind you hired him when you broke your cardinal rules, so I would say you have to give him a chance before you expend the time and money in hiring his replacement.

Coming into to a new job can be very stressfull and you really can't judge a person's true talents until they've adjusted to their new environment. Give this person a chance to shine before you make any judgements.

Andy Evans
A: 

George Polya wrote a book on teaching people mathematical problem solving. I have not yet read it myself, but it waits in on the shelf. I suppose it teaches overall problem solving, which includes/needs abstract / out of the box thinking, too.

http://en.wikipedia.org/wiki/How_to_Solve_It

Ronny