• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Dealing with Assertive but Clueless Developer

 
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
My colleague and I are a pretty good programming team. We are rockstars at our company. We have accomplished many feats and we have the perfect professional yin/yang relationship. I'm the "anarchist" and executor who gets things done rapidly. He is the planner and "okay, let's settle down and think this through" kind of guy. Together, we just have seamless teamwork dynamics and have pulled off impossible feats, making millions upon millions of dollars for our company.

For over a year, our managers (not technical other than they know SQL) have been trying to find someone with more technical experience than us to join our team. I warned them it was a fool's errand because we are not Silicon Valley, and technical talent is rare in our industry. We must hire entry level and develop from within. A year later, I was proven right. They never found anybody and our senior director ordered them to axe the job posting. But they settled on hiring a contractor from India to help us.

She has been a pain to deal with. She has only been here for a few weeks. Without learning our very complicated business, she keeps suggesting ways to change it that make zero sense. Her suggestions are almost random with no understanding of what we do. Still, she says things like "My way better, yeah? We do it my way" but she doesn't know a damn thing. She is absolute about using MVC, Spring, Hibernate, and decoupling patterns, but she really is using a bunch of buzzwords she never has practiced. I kept politely steering her to more relevant topics she should learn, but when I tell her not to do something she does it an hour later.

She would also disrupt meetings by making stupid nonsensical suggestions. When she said "well that would require a code change and we should avoid that", I turned to her and said "I wrote the code. I know how it works. It's not that hard, and its very easy to change." After 10 days, my patience with her was growing thin especially with my colleague on vacation to not back me.

She then went off to code something that was completely trivial and useless. She built it standalone and not part of our current framework, and therfore had no value. She emailed everyone what she did and my manager extolled her for contributing. I then rained on their parade and said "We can't use it. This does not in any way solve our business problem because..." We all met the next day and after I made my case, we all dismissed her contribution. Shockingly, she rebuilt it again a few days later in JavaFX like that would make a difference. She then asked me to do a code review with her so we could put it in production. I was stunned at how clueless she was, and basically told her "We abandoned this idea last week... don't you remember? And yet you rebuilt it verbatim in JavaFX like that would make a difference?" It's like asking someone to build me a boat, but they build me a shed instead. When I say "No, I want a boat not a shed", they tear down the shed and build another shed. Just in awe.

My manager met with me later and said to not be hard on her, implying that I am acting elitist or something towards her. I explained that when I tell her not to do something, she does it anyway. When we dismiss an idea in a project planning meeting, she does it anyway. It makes working with her very difficult. I also implied I don't want her coding and to have her on DBA duty because she gets frantic and difficult when working with Java. I think he took my words but told me not to be so hard on her. Really frustrated by the feel-good management mentality right now and making the problematic person the victim.

Now she's pushing Hibernate which is the last thing we need. We need to keep our SQL low-level and high-performant especially with our modest hardware. My colleague and I shot it down, but she arranged an appointment to talk about it anyway. I'm ready to detach from what she chooses to do and let her implode. I don't want to be painted as the bad guy.

What have you guys done to deal with difficult colleagues and management who are in denial of the issue?
 
author & internet detective
Posts: 41878
909
Eclipse IDE VI Editor Java
  • Likes 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Tom,
There are a number of issues in there. Have you tried training her? Like actually sitting down with her and explaining what you do and why?

I also recommend having a process for making suggestions. (such as "you should use Hibernate"). It could be a regular retrospective. Or "process improvement lunch" every other Friday. The idea is to have a time/place for suggestions where it is appropriate to talk about why they are good (or not good) ideas. Often with a new person, the suggestions are coming from a good place but the person doesn't know what she doesn't know and they aren't appropriate.

It sounds like she has some tech skills since she built something even though it wasn't what you needed. Which means there is a chance you can coach her to success. What if you become more involved. For example, you do a design together with her. Or pair program for a while. Or ask to look at an early draft. As far as Hibernate, maybe you could have her do a proof of concept. Write one query (you chose it so it isn't trivial) and compare the performance difference between raw SQL and Hibernate.

There's a more general problem I'm seeing. It doesn't appear to be clear on what her role is vs yours. Which of the three of you makes the final call on design decisions?

 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Jeanne Boyarsky wrote:Tom,
There are a number of issues in there. Have you tried training her? Like actually sitting down with her and explaining what you do and why?

I also recommend having a process for making suggestions. (such as "you should use Hibernate"). It could be a regular retrospective. Or "process improvement lunch" every other Friday. The idea is to have a time/place for suggestions where it is appropriate to talk about why they are good (or not good) ideas. Often with a new person, the suggestions are coming from a good place but the person doesn't know what she doesn't know and they aren't appropriate.

It sounds like she has some tech skills since she built something even though it wasn't what you needed. Which means there is a chance you can coach her to success. What if you become more involved. For example, you do a design together with her. Or pair program for a while. Or ask to look at an early draft. As far as Hibernate, maybe you could have her do a proof of concept. Write one query (you chose it so it isn't trivial) and compare the performance difference between raw SQL and Hibernate.

There's a more general problem I'm seeing. It doesn't appear to be clear on what her role is vs yours. Which of the three of you makes the final call on design decisions?



Those are some very good thoughts. I never thought of creating a formal structure to hear out new ideas. Good ideas often seem bad at first, so I see the merit in creating a structured forum where all ideas can be shared safely without fear of judgement.

And you're right. She has some technical aptitude, but her attitude and approach to problem-solving will probably have to adapt. Our business is very unique in that we need technical talent that DEEPLY understands the business side. We are not terribly fond of cramming six design patterns into a class for the sake of using design patterns.

To be fair, I thought I was making good progress with her the past week by having her work with the database and have her learn our business through our tables.

I think some of your questions are pointing to a larger issue of mismanagement. My manager acknowledged he did not prepare the right training for her, and she is all over the place because of it. My colleague and I have sat and trained with her. We're making progress in getting her to focus on whats critical, but she has her "squirrel" moments. Because of their talent search blunders, I think management's hope was to desperately throw another headcount towards us and hope something works out. They didn't plan much beyond that. My colleague and I are fulltime and have Senior Developer titles, while she is just a "contractor" with no established responsibilities or role other than to assist us. Therefore, either of us make the final call on design depending on whose project it is. I establish and maintain our design standards though.



 
Ranch Hand
Posts: 789
Python C++ Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tom Nielson wrote:My colleague and I are fulltime and have Senior Developer titles, while she is just a "contractor" with no established responsibilities or role other than to assist us. Therefore, either of us make the final call on design depending on whose project it is. I establish and maintain our design standards though.


You're allowed to show leadership.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Guillermo Ishi wrote:
You're allowed to show leadership.



Yeah I guess so. It's kind of awkward to take charge of other people without being insubordinate, even though my colleague and I are very autonomous and manage ourselves. So it is difficult to shape the contractor to a role when I have no official authority to define it (much less take corrective action when they get out of line).

The organization is in an awkward transition I have to wait out. There's a tenure promotion system that is increasingly becoming dated, and the people who manage us always feel in over their heads. There's a high management turnover and all of our internal customers suggested I should be the manager, but I don't have the tenure. I've advised my managers to not do several things which they did anyway, and every decision they made blew up in their faces like I predicted. After the interview I hinted very strongly I was not thrilled with this contractor, but in their desperation to prove they could get technical talent they hired her anyway.

***sigh*** I guess the decision comes to waiting this out for a year or two when I get tenure, or address the problems now and create further tension about my place in the organization. I've got unlimited support from higher leadership and internal customers, but I got to ask if its worth creating the politics and coming off as a hard**s to the people that "don't get it".
 
Guillermo Ishi
Ranch Hand
Posts: 789
Python C++ Linux
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This might be helpful now or in the future. The famous 5 types of power. For example:
http://smallbusiness.chron.com/5-types-power-businesses-18221.html

A long time ago I had a job where I had to do hourly reports and maintenance on a big steam-powered generator. The guy I was replacing, who was moving on, was a former U.S. Army Ranger, who'd only been out a couple of years. I got a good dose of Army leadership when he taught me the generator that always stuck with me. I wanted to do it my way, which would have worked, but he wouldn't let me. He did help though by writing something in yellow paint on some of the dials I had to read, that corresponded to their place on the checklist. He wouldn't let me take notes instead, and he insisted that I start in the same place and always walk exactly the same route. In a couple of days I had it down slicker than a whistle. Better than I would have done with my notes. This was helped along by the fact that our manager couldn't have been more hands off. He just didn't want to be disturbed Unless something went wrong, when he would save the day. Point being if you have the opportunity and the skills you can do some good stuff. LOL
 
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
As an ex-contractor I can see a couple of other aspects to this that might be relevant.

Your contractor clearly has a technology (or at least buzzword) comfort zone - Spring/Hibernate etc - and you feel she is trying to push that forward even though you don't feel it is relevant.

But it could be that she is pushing an area where she thinks she can offer expertise, because she is aware that you employed her for her skills and are paying for those skills. Plenty of organisations employ contractors on this basis i.e. they want a plug-and-play XYZ developer and they're not interested in exploring wider ideas with the contractor who is expected to just "shut up and code". This model is often typical when working with the bulk outsourcing suppliers, who will sell you the services of e.g. 50 vanilla XYZ developers who will indeed just shut up and code, but these XYZ developers are discouraged from going beyond the XYZ comfort zone, either because they don't want to upset the relationship with the client or because their own employers don't want to offer anything beyond XYZ unless the client will pay extra for it. Of course, this is generally a pretty poor model for a productive contractor/client relationship, and it certainly doesn't sound like this is what you want, but it could be that your contractor is from this world and is uncertain how to meet your rather different and more challenging expectations.

Also, as Jeanne suggests, it sounds like you have not really figured out for yourselves what the contractor's role should be. In particular, your remark that you require "technical talent that DEEPLY understands the business side" is kind of red flag for using contractors at all. How do you expect to find a contractor who "deeply" understands your business when you claim that business is "very unique"? Alternatively, what steps can you take to ensure that your contractor understands your business as quickly and deeply as possible so she can become more productive and contribute more positively to your work? It's possible that you simply picked the wrong contractor for your needs, that you have not sufficiently identified what those needs are in the first place or that you cannot reasonably expect to meet those needs via an external contractor anyway.

You probably need to clarify what you are expecting from the contractor so that you can all work together more productively, or - if necessary - so you can look at alternatives to using external contractors to meet the needs of your distinctive business.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sorry for taking so long to reply back to all your guys' helpful posts. I took all of them to heart and had a coming-to-Jesus meeting with my manager.

I had a difficult time navigating the politics and narratives going around. She wanted to exploit management's technical ignorance to give herself authority, but she was increasingly frustrated I was calling out her technical gibberish. So she painted my criticism as me being elitist towards her. But in private she would try to dominate me and speak over me on how we should do things (again with zero understanding of our business). I finally had an opportunity to put her in a situation she would show her true colors, and now management is really sheepish they hired her.

Chris Webster, your insight was VERY helpful. I relayed a lot of that to my manager and finally we all have some understanding why she might operate the way she does. I am not terribly optimistic about her ability to adapt, but she is in a year contract so I will make the best of it if she sticks around.

It makes me sad sometimes how my industry is stuck with the "vanilla" XYZ outsourced developers, and they are ruining us with sunk costs and poor work. But that is why my colleague and I are so successful, and I hope we are able to replicate ourselves at least a few times so we can further our cause to in-source innovation. If not I'll at least be happy with the job security. It's nice to be needed.

I do wish I had tenure to be management, but I don't want to spend 70% of my day in meetings away from the thing I do best. I hope I can help push the organization in the right direction and define a more effective management structure focused on value delivery and technical talent development.
 
chris webster
Bartender
Posts: 2407
36
Scala Python Oracle Postgres Database Linux
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Glad we managed to help you get a different perspective on your situation, even if it's still far from satisfactory. But I would just point out that it's not the outsourced vanilla XYZ developers who are damaging our industry. It's our (managers') decision to use them inappropriately that is doing the real damage. If you're painting a bridge then you can probably do a fine job with relatively unskilled/inexperienced labour. But if you use the same unskilled labour to build a bridge, then you only have yourself to blame. Unfortunately the PHBs still seem to have trouble getting their heads around the basic principle of "caveat emptor". Good luck with your project - hope you manage to turn things around with your contractor.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

chris webster wrote:Glad we managed to help you get a different perspective on your situation, even if it's still far from satisfactory. But I would just point out that it's not the outsourced vanilla XYZ developers who are damaging our industry. It's our (managers') decision to use them inappropriately that is doing the real damage. If you're painting a bridge then you can probably do a fine job with relatively unskilled/inexperienced labour. But if you use the same unskilled labour to build a bridge, then you only have yourself to blame. Unfortunately the PHBs still seem to have trouble getting their heads around the basic principle of "caveat emptor". Good luck with your project - hope you manage to turn things around with your contractor.



haha I did not know Dilbert's boss had an official acronym, but very true. I look forward to an age where managers are hired based on their tangible knowledge and measurable value. And yeah I see scenarios where commodity developers are needed, but you're right in that poor management tends to see all developers and engineers to be interchangeable. They tend to think a vanilla XYZ developer, a DBA, and a full stack developer are all the same thing. Like PHB says, "Anything I don't understand must be easy."
 
Rancher
Posts: 2759
32
Eclipse IDE Spring Tomcat Server
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Meh. Allow me to be a little less than enthusiastic here. Your company was screwed on the word "tenure". I would never work at a software company that allows "tenure" to decide responsibilities.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Likes 2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Well I bring good news. My problematic colleague quit a few weeks ago. I was starting to raise serious concerns but after her departure I got a lot of apologies from management, all of whom acknowledged she was a destructive influence and waste of time for our department. My value and talent seems to be understood now, and they told me I was right about everything from the beginning. They promised to not hire a contractor for this position again, and then relocated a former colleague back to my team which was the most optimal.

Thanks again for listening to my rants and providing insight I was able to present. It helped my case a lot.
 
Jeanne Boyarsky
author & internet detective
Posts: 41878
909
Eclipse IDE VI Editor Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Tom,
Have a cow for closing the loop. It's nice to see the conclusion. I'm glad you don't have to deal with the situation anymore. And that your management "gets it".
 
Ranch Hand
Posts: 124
4
MySQL Database Clojure Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tom Nielson wrote:Well I bring good news. My problematic colleague quit a few weeks ago. I was starting to raise serious concerns but after her departure I got a lot of apologies from management, all of whom acknowledged she was a destructive influence and waste of time for our department. My value and talent seems to be understood now, and they told me I was right about everything from the beginning. They promised to not hire a contractor for this position again, and then relocated a former colleague back to my team which was the most optimal.

Thanks again for listening to my rants and providing insight I was able to present. It helped my case a lot.



I'm glad you got things worked out. As a contractor myself, working for a company that works within a large global company, I have some empathy for the woman who was hired and then quit. There is a huge disparity between contingent workers and "real" employees and I am sure that she could see right from the start she needed to immediately prove her worth because typically contingent workers don't get trained. Also, since there was no real training for her, and you really didn't want her there anyway, I can see immediate frustration on her part. If she wasn't hired as a trainee it's possible that your cracker jack management team that hired her told her that one of her jobs was to find "new and better ways to do things" which means they didn't have a clue about what you do either nor any real respect.

Again, I'm sorry you had to endure the poor decision making of you managers, and that somebody got hired, didn't get trained and had to quit, and that you had to deal with the disrespect and the frustration. I'm sure the manager who hired her still has his/her job, right? Maybe they should be the ones to have left. Stories like this are sad.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Jeanne Boyarsky wrote:Tom,
Have a cow for closing the loop. It's nice to see the conclusion. I'm glad you don't have to deal with the situation anymore. And that your management "gets it".



Thanks Jeanne! I'll name her Bessie.
 
Tom Nielson
Ranch Hand
Posts: 53
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Blake Edward wrote:

I'm glad you got things worked out. As a contractor myself, working for a company that works within a large global company, I have some empathy for the woman who was hired and then quit. There is a huge disparity between contingent workers and "real" employees and I am sure that she could see right from the start she needed to immediately prove her worth because typically contingent workers don't get trained. Also, since there was no real training for her, and you really didn't want her there anyway, I can see immediate frustration on her part. If she wasn't hired as a trainee it's possible that your cracker jack management team that hired her told her that one of her jobs was to find "new and better ways to do things" which means they didn't have a clue about what you do either nor any real respect.

Again, I'm sorry you had to endure the poor decision making of you managers, and that somebody got hired, didn't get trained and had to quit, and that you had to deal with the disrespect and the frustration. I'm sure the manager who hired her still has his/her job, right? Maybe they should be the ones to have left. Stories like this are sad.



Thanks I appreciate that. It really was a vicious cycle of bad decisions and escalating conflict rooted in bad management. I would not be surprised if the manager quits in the next month or two.

Fortunately I'm not dispensable, and the people that really matter (VP's and directors, not management) know that. The middle management immediately over me should not exist but unfortunately a large organization evolves slowly, and everyone knows the tenure HR metric is becoming dated.

But yes, it was frustrating management did not recognize my value. We don't work in the tech sector (in an industry not reputed for tech talent) and I so badly wanted to tell them "Facebook and Oracle have tried to recruit me, and I don't think you appreciate that I'm choosing to be here!". I think things may work out though now.
 
reply
    Bookmark Topic Watch Topic
  • New Topic