Re: Questions about hiring .NET developer



RE:
<< I need to know if there's anyway to get a good estimate of time on how
long it should take to finish the almost complete new .NET intranet site >>

You should not make any assumptions about the state of the new .NET intranet
site. If you think that it is "almost complete" which is what you wrote,
then you are likely setting yourself up to get screwed again. Here's why:
chances are that you have been hiring incompetent developers. If you finally
get someone in there who knows what he/she is doing, then he/she will almost
certainly want to start over from scratch and get it right from the
outset... rather than building on a bad foundation. Furthermore, if you hire
someone who is very good, and he/she tells you that he/she should start
over, then let that happen. Odds are that they will finish much more quickly
than if they were required to "leverage" the crappy prior work, and you'll
have a better product in the end.

Finally, about estimates: creating good estimates requires YOU [the
customer/end user] to do a good job of communicating the requirements
clearly and decidedly. Whenever you change the requirements (which happens
all the time), then any prior estimates automaticaly become invalid. This is
such a typical scenario: You ask me how long I'll take to accomplish X, Y,
and Z. I tell you N hours. Then you later modify Z or add new requirement K.
You then expect N hours to still hold true. Sounds stupid doesn't it?
Happens all the time.

Sorry if all of the above sounds negative or even rediculous... but it's
what I've seen for the past 14+ years as an independent consultant. I've
made a TON of money over that period cleaning up after screw-ups. Here are a
few lessons/rules, heck "Laws" of IS hiring that I believe to be totally
true. You should pay attention.

You get what you pay for. It's actually worse than that: The
cheaper-by-the-hour programmer is BY FAR the most expensive person you could
hire. Get a screw-up in there at $20/hr and watch him fritter away 100 hours
on a project and never quite gets it right (i.e. never *finishes* the job).
Then hire someone truly competent at $80/hr and watch him/her *finish* the
same project in 15 hours. Just with those numbers alone the competent
developer is DONE at $1200 AND sooner than the screw-up who has cost you
$2000 and STILL isn't done! Yes - those numbers are realistic. The costs of
the screw-up go WAY UP beyond his/her immediate costs if their crappy
product gets into production where it will likely perform slowly and suffer
data integrity problems. You then have to add [to the total costs of the
screw-up] the lost productivity of your employees. And, if your data is
truly important, then you will eventually need to hire a competent developer
to come in and redo everything from scratch. But you won't get away for that
initial 15 hours because; rather than starting out at "ground zero", you are
starting out the competent developer somewhere BELOW ground zero. That is,
you would then have to pay your competent developer to [at least] clean up
the problemmatic legacy data in addition to creating the replacement
solution.

Let's review
Option 1 - hire competent developer initially:
Cost 15 hours - DONE (and with a good and reliable solution)

Option 2 - hire a "junior programmer" (i.e., *guaranteed* to be a screw-up)
Costs:
100 hours (the point at which you stop the bleeding) project still not
done
+
Lost productivity costs (if the crappy project made it into production)
+
Data cleanup effort (at least) on the part of the replacement competent
programmer
+
New project from scratch (if done by a competent developer would be FAR
cheaper than trying to "leverage" a pile of crap left behind by the screw-up
(I mean junior programmer).

Again, this is what goes on ALL the time. Given your post here, I suspect
you already know what I'm talking about.

About your hiring decision (to finally answer your specific question):
There is no magic bullet for you. But you might consider doing a variation
of a scenario I went into in 1999. I was interviewed for a contract position
with a Big Bank. The group in the bank was nervous in a way like you
apparently are. Same scenario. They had recently gotten rid of the 2nd
person hired to extend an existing system in some very specific ways. They
didn't want to get screwed again. So after I went through 4 separate
interviews (from technical to "is this guy a good fit for the team" sorts),
I was offered a TWO WEEK gig. Specifically, they told me that there were two
known bugs in the production system. I had two weeks to (1) find both bugs,
(2) satisfactorily remediate each, and in a way that would pass technical
review (with flying colors) with other developers on staff. IF I was able to
do that, then I was to get a 3-month contract to extend the system per the
new requirements that the prior two developers had choked on.

You could do someting like that. Maybe not as intense, but make 'em perform
before getting too far with them.

-HTH

BTW: Prior to getting my interview with Big Bank, I had one headhunter tell
me I was too *unqualified* to work for Big Bank and that I would need more
years on my resume. Another headhunter got met the interview. After the
2-week gig I nailed the 3-month contract and ultimately waltzed out of Big
Bank nearly 6 years later... serving in the role as "technical lead" for the
last 4+ years of my time there. Lesson for you: What's in a resume can be
meaningless... whether it makes the candidate look overly qualified or
overly green. The upshot: Make 'em perform - actually do something and
evaluate that result.

-S



<egaskill@xxxxxxxxx> wrote in message
news:1187979390.235430.298940@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
So we have a fairly small internal company application written in PHP,
it interacts with a MySQL DB and all it really does is create new
orders, edit existing orders, and prints reports based on different
variables in data. I don't know why this project has turned into such
a huge ordeal, but every developer we've hired so far to take care of
this project has come up short on the deadlines they themselves have
put forth. The last guy we hired came in and started rewriting the
PHP site in .NET and we have since had to let him go.

Now, we aren't a huge company, we have 35 employees total and maybe 10
of which use the company intranet simultaneously, so it's not really
in need of any crazy layers yet. I've been interviewing new
developers for this, and they all seem to say "Oh this is a really
small project", but I'm just worried (mainly for the sake of my job)
about hiring another guy that says that then wont be able to finish
it. I need to know if there's anyway to get a good estimate of time
on how long it should take to finish the almost complete new .NET
intranet site and how to pick out a guy that isn't going to screw us
over again (is all I have to go by references and qualifications?).

Also, any tips on managing a developer would be appreciated.




.



Relevant Pages

  • Re: Questions about hiring .NET developer
    ... Get a screw-up in there at $20/hr and watch him fritter away 100 ... developer is DONE at $1200 AND sooner than the screw-up who has cost you ... starting out the competent developer somewhere BELOW ground zero. ... Lost productivity costs (if the crappy project made it into production) ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: VSS best practice for promoting code to production?
    ... might label it in VSS, then we will move it from our dev environment ... After the testers shake it out and determine that it's production ... The developer may label it again as a production ... The SysAdmin performs a get version from the developer's VSS. ...
    (microsoft.public.vstudio.sourcesafe)
  • Re: VSS best practice for promoting code to production?
    ... might label it in VSS, then we will move it from our dev environment ... After the testers shake it out and determine that it's production ... The developer may label it again as a production ... The SysAdmin performs a get version from the developer's VSS. ...
    (microsoft.public.vstudio.sourcesafe)
  • RE: Procedural Issues
    ... 1.The ability to make undetected changes to production. ... Moving code from dev to prod should include an intermediary QA process by which someone other than the developer reviews and tests the code for bugs or impact to production. ... Typically operational personnel are not developers and do not have the same capability to modify code. ... I have heard auditors argue that a lack of segregation of duties presents an "unbounded risk" or one that cannot be adequtely measured. ...
    (Security-Basics)
  • Re: FileReader / BufferedReader Help
    ... I think every improvement comes with a cost of a little reinventing. ... great for smaller shops but I don't have that luxury. ... as a developer, I was frankly appalled by the bureaucracy in some cases. ... Promotion to Production forms, updating run books, counting productivity ...
    (comp.lang.java.help)