Hiring · Web Development

How do you deal with a developer who is not showing work?

Michael Hong CEO / Co-Founder of Digital Media Rights LLC

April 22nd, 2015

My dilemma. Recently hired a backend developer to create a website for one of our channels, borrowing many elements from an existing and similar website for another channel that I operate. He has been asked repeatedly to set up a staging site so we could chart his progress. For one reason or another, this has not been done. As you can probably surmise, I am a content expert and tech matters are not my strong suit. Is there any way I can ascertain how much work has actually been done in about the 3 months I have engaged him. Can I ask for him to send me a copy of the codes he has written to date. Any feedback would be greatly appreciated.

Stephen Cataldo

April 22nd, 2015

It might be important to ask questions and figure out the reason. There's a really big difference between someone scamming you and charging for code they haven't done, and someone who thought they could handle the project and is a nervous mess when they can't deliver. I've seen the second happen especially with younger independent contractors over their head for the first time. If you're lucky they're just behind schedule and trying to catch up rather than be embarrassed, and you need calm & trust rather than fear. Otherwise cutting your losses might be the best option ...  it's really rare that you can take a fouled-up badly written code base and hand it to the next developer and have them get something useful out of it, decide quickly.

Brian McConnell

April 22nd, 2015

You should require all code to be checked in daily to a source code repository such as github or bitbucket. Then it is easy to monitor progress, how often code is checked in, number of changes made, and so on. This also gives you a full revision history of your code base, so if you need to roll back to a previous version due to a bug, you can readily do so.

Shannon Code Chief Architect

April 22nd, 2015

As a developer myself, and someone who takes on more then I can handle I can relate.

He is probably juggling multiple jobs and whoever bitches loudest get his attention. It's infortunately the pitfall we fall into. That being said. Set up a private girhub repo and ask him to commit. Unless his contract said he would only deliver upon payment, it's within your right to be able to see his work. 

If he is juggling, expect a few missed meetings and deadlines. be persistent without being too demanding and within the week you should expect somethingn even if he has to "cram to get it done. 

I often bid a 10 hour job that will take a month because I've got to juggle lots of other work. And there's the safety net of "if I need to I can marathon code and finish it in 3 days"

So, empathy, benefit of the doubt will go a long way. But you have to work out where the line is between persistent enough to get results and
 too upset 

Tim Scott

April 22nd, 2015

Insist on a live demo ASAP. If you're in the same city, you should be sitting next to him. Otherwise screen share over Skype or whatever. If he won't make that happen within a couple of business days, you know you've got a bad situation, and it's time to disengage and cut your losses as best you can. In parallel, do your best to get custody of any source code ASAP.

Ted Neward

April 22nd, 2015

Ask him for access to the source code repository in which hes keeping the code. If he dodges that question or refuses to get it to you, you have a problem. If hes not using a source code repository system, you have a problem. If he doesnt know what a source code repository is, you have a problem. If he doesnt or wont give you access to the source code repository, then ask for a tarball or zip file of the current code. Stress that this is not a delivery but just a work-in-progress check and that you just want to look at the site as it currently stands. If he doesnt give you that, then tell him to stop all work immediately, stop all payments immediately, and get a lawyer. And chalk this up to experience, and next time find a developer who is familiar with agile principles, and/or a technical partner who can help you avoid this kind of mess. Ted Neward Author, Speaker, Mentor http://www.newardassociates.com t: @tedneward | m: (425) 647-4526

Michael Barnathan Adaptable, efficient, and motivated

April 22nd, 2015

I'm not usually a big proponent of agile methods the way many people in the field are, but here they're appropriate. If you have someone you need to keep accountable and he doesn't seem to be delivering, ask him to demo something every couple of weeks. Negotiate milestones for work delivered, and tie work delivered to success of said demos.

Brenton Webster

April 22nd, 2015

I agree with the majority of what's already been said on this thread.

I'd also stress this point: immediately hire a strong developer that you trust to review his work. If you're a non-technical person, even if he shows you a demo, checks into GitHub or another source code repository and starts providing you with regular check-ins and updates, you won't be in a position to effectively review his work. You need to find someone you trust who's an expert in the technologies that you're using and have them evaluate the work that is being produced.

This is a good general rule of thumb for any kind of outsourcing, and especially off-shoring. If you've got the skills to review the work, great, if not, you must find someone who does. Otherwise, it's a total crap shoot. 

The senior dev / architect will cost you more, but you shouldn't need too many of their hours. This person combined with cheaper, more junior devs can be a decent, cost-effective way to get things done.

Liam Carolan Marketing Technologist

April 22nd, 2015

In my experience, these types of situations always end up being cultural behaviors.  What you feel is important to you is not necessarily the case with your resource.  Three months is a fairly (ridiculously) long time to pass without seeing "anything".  The safest way to handle these task's is to spell out exactly what needs to be done and force your contractor to log in to tracking/project management system.

I'm pretty sure that everyone on this board who is answering your query uses "something" to manage resources.

1. ASAP - get on a Skype call and share screens, have him walk you through everything - whatever it takes.

2. Payment:  If this is a "pay at the end of the project" type gig... Set up a strategy for getting the reporting and accountability that you need for your own sanity and offer a milestone payment as a reward.

3. If you anticipate having to find and work with more contractors... find a project management platform that you and your contractors can interact with to track everything day by day.  There's lots of good ones like Bascamp or Jira or another simpler system that's still quite robust is "teamworkpm"    + there are lots of people here that can give great suggestions too.

The KEY with collective time/project management software is a little bit of time each day.  It won't take more than a few minutes however,  if you interact weekly or a few times a month, it becomes a huge task that can get frustrating quickly.

It's been long enough with your resource that you can surely make some demands and reveal some thoughtful consequences - clearly you're not getting what you want. 

Michael Greer CTO & Co-Founder at TAPP TV

April 22nd, 2015

Ask him to show you his code repository. Should be in github or similar, you should own the repo. This will show the history of his work. Getting the code repo is normal: since you own the code, you own the repo.

Joanan Hernandez CEO & Founder at Mollejuo

April 24th, 2015

I would like to add a twist on this thread, as most of respondents are programmers, so they're suggesting stuff like git and related. Which is completely correct BTW.

Hiring a programmer or any other person is about getting the job done. Most of us are not construction specialist nor contractors. Most of us might not know how to read a house schematic, aside of the basic things. But if we contract someone to build our house, we measure the progress just by checking out the house every week or day.

With a programmer shouldn't be that different. In the end he/she were hired to develop a product with features, so regardless of the code and git (which come handy), the progress can be measured on how those features are being deployed (i.e. can you try them out?). So if none of the requested features have been made available to you to try out in three months, or those features are stagnant, then that house is not being built by the right person.