General Consulting Advice Urgently Needed

N

Novice

I've got some questions about consulting as a Java developer. Thanks to a
personal connection, a project needing a Java developer has just come to
my attention and I can probably get this contract if I play my cards
right.

Unfortunately, as I've said elsewhere in this newsgroup, I'm a Java
hobbyist and have done very little paid work as a Java developer so I'm
not completely sure on how to land this project. Most of my past
consulting has been developing websites so I'm not sure on several
details of how to present and sell myself.

The opportunity is literally sitting in my inbox as we speak in the form
of an email from my friend's friend. He's asking me what my rate is and
I'm not sure what to answer. I don't know what the going rate is for Java
development in this area since there isn't a whole lot of Java
development around here and I have no idea what rates people are asking.
Frankly, I'm willing to do the work at almost any rate he's willing to
offer, although, naturally, I'd rather get more than less. I'm also
concerned that if I set my rate too low, he'll think that I'm really
awful at what I do and look elsewhere for someone to fill the
opportunity. Can anyone suggest a way to come up with a rate that
encourages him to give me the job, even if we have to negotiate it down
(or up) to something we both can live with?

In a nutshell, if I tell him $10/hr, I think I'll be signalling that I'm
so awful that that's the best I think I can get. If I tell him $100/hr, I
think his expectations may be beyond my abilities and/or I'll be so high
that he won't even bother to try to talk me down. I don't want to give
him a number that is going to scare him off and convince him that this is
not worth further discussion.

A related issue is what I think of as R&D work. In the past, if I've
gotten jobs to do something that I don't entirely know how to do, I've
made a point of absorbing the R&D costs and not passing them to the
customer. For example, if someone wanted me to build a website and
include an online shopping component so that customers could buy things
via a shopping cart and credit card, if I didn't know how to implement a
shopping cart and set up a merchant account, I'd research that on my own
time and not charge the customer, since he basically assumed I knew how
to do that going in. It didn't feel right to charge him for the time it
took me to get up to speed. I treated it as an investment in my own
education and did the learning on my own time, charging him only to
implement the solution, once I figured out how to do it. I'm not sure if
that's standard practice among other consultants or something very odd,
maybe even unprofessional. I'd really like your thoughts on how I should
handle this. Should I assure him that the things I have to teach myself
in order to complete this project won't show up on his bill? Or will that
seem unprofessional? Or is he going to expect to pay me while I teach
myself the elements of his project that I don't already know?

As I said, this opportunity is sitting in my inbox and I don't want to
keep him waiting excessively. I know that requests for urgent help are
greatly frowned upon in newsgroups and believe me, I'm kicking myself
that I didn't figure out this kind of stuff long ago but it just wasn't
anything I particularly needed to know at the time. Any advice you can
give me would be much appreciated. Sorry to put it on such an urgent
footing; this came up very suddenly and unexpectedly.
 
J

Jeff Higgins

I've got some questions about consulting as a Java developer. Thanks to a
personal connection, a project needing a Java developer has just come to
my attention and I can probably get this contract if I play my cards
right.

Unfortunately, as I've said elsewhere in this newsgroup, I'm a Java
hobbyist and have done very little paid work as a Java developer so I'm
not completely sure on how to land this project. Most of my past
consulting has been developing websites so I'm not sure on several
details of how to present and sell myself.

The opportunity is literally sitting in my inbox as we speak in the form
of an email from my friend's friend. He's asking me what my rate is and
I'm not sure what to answer. I don't know what the going rate is for Java
development in this area since there isn't a whole lot of Java
development around here and I have no idea what rates people are asking.
Frankly, I'm willing to do the work at almost any rate he's willing to
offer, although, naturally, I'd rather get more than less. I'm also
concerned that if I set my rate too low, he'll think that I'm really
awful at what I do and look elsewhere for someone to fill the
opportunity. Can anyone suggest a way to come up with a rate that
encourages him to give me the job, even if we have to negotiate it down
(or up) to something we both can live with?

In a nutshell, if I tell him $10/hr, I think I'll be signalling that I'm
so awful that that's the best I think I can get. If I tell him $100/hr, I
think his expectations may be beyond my abilities and/or I'll be so high
that he won't even bother to try to talk me down. I don't want to give
him a number that is going to scare him off and convince him that this is
not worth further discussion.

A related issue is what I think of as R&D work. In the past, if I've
gotten jobs to do something that I don't entirely know how to do, I've
made a point of absorbing the R&D costs and not passing them to the
customer. For example, if someone wanted me to build a website and
include an online shopping component so that customers could buy things
via a shopping cart and credit card, if I didn't know how to implement a
shopping cart and set up a merchant account, I'd research that on my own
time and not charge the customer, since he basically assumed I knew how
to do that going in. It didn't feel right to charge him for the time it
took me to get up to speed. I treated it as an investment in my own
education and did the learning on my own time, charging him only to
implement the solution, once I figured out how to do it. I'm not sure if
that's standard practice among other consultants or something very odd,
maybe even unprofessional. I'd really like your thoughts on how I should
handle this. Should I assure him that the things I have to teach myself
in order to complete this project won't show up on his bill? Or will that
seem unprofessional? Or is he going to expect to pay me while I teach
myself the elements of his project that I don't already know?

As I said, this opportunity is sitting in my inbox and I don't want to
keep him waiting excessively. I know that requests for urgent help are
greatly frowned upon in newsgroups and believe me, I'm kicking myself
that I didn't figure out this kind of stuff long ago but it just wasn't
anything I particularly needed to know at the time. Any advice you can
give me would be much appreciated. Sorry to put it on such an urgent
footing; this came up very suddenly and unexpectedly.
<http://www.payscale.com/research/US/Certification=Sun_Certified_Java_Programmer_(SCJP)/Hourly_Rate>
 
S

Stefan Ram

Novice said:
Most of my past consulting has been developing websites so
I'm not sure on several details of how to present and sell
myself.

I think it helps to be able to estimate what you can do and
what you cannot do and then to communicate this honestly.
He's asking me what my rate is and I'm not sure what to answer.

You can search the web for rates of developers and then ask
for the average rate or one standard deviation below it
(since you are unexperienced as a paid Java developer).
Frankly, I'm willing to do the work at almost any rate he's willing to
offer, although, naturally, I'd rather get more than less.

If you are willing to work at almost any rate, how do you
pay your rent at the end of the month? You should at least
cover your opportunity costs, i.e., what you would be paid
otherwise, when you would do something else.
In a nutshell, if I tell him $10/hr

That sounds too low.
If I tell him $100/hr.

That sounds too high. (However, I have no idea what is
actually average.)

Let's take the logarithmic average:
31.6227766016837933199889354443272.

This still sounds clearly below average to me. You do not
only need to pay your rent, but also your health insurance,
office rent, expenses, equipment, liability risk, retirement
provision and savings for times of unemployment. And after
all your costs are covered, there should be something left.
And you don't want to spoil the rates.
 
N

Novice

(e-mail address removed)-berlin.de (Stefan Ram) wrote in @ram.dialup.fu-berlin.de:
I think it helps to be able to estimate what you can do and
what you cannot do and then to communicate this honestly.
That's certainly what I want to do. Sometimes though, I get the
impression that consultants claim to know much more than they actually do
and then scramble like mad to do the actual work when they get the job.
Sometimes, they rise to the challenge and manage to do an acceptable job.
Other times, things don't turn out so well.
You can search the web for rates of developers and then ask
for the average rate or one standard deviation below it
(since you are unexperienced as a paid Java developer).


If you are willing to work at almost any rate, how do you
pay your rent at the end of the month? You should at least
cover your opportunity costs, i.e., what you would be paid
otherwise, when you would do something else.
Sorry, I should have put that differently. Obviously, I have to cover my
costs and make more from this consulting job than I can from anything
else available.
That sounds too low.

I didn't seriously mean to propose a $10/hr or $100/hr rate, I was just
throwing out extreme examples to illustrate my point.
That sounds too high. (However, I have no idea what is
actually average.)

Let's take the logarithmic average:
31.6227766016837933199889354443272.

This still sounds clearly below average to me. You do not
only need to pay your rent, but also your health insurance,
office rent, expenses, equipment, liability risk, retirement
provision and savings for times of unemployment. And after
all your costs are covered, there should be something left.
And you don't want to spoil the rates.
Based on the other reply to my question, I'm thinking $40/hr is a good
rate to propose, although I'm inclined to mention that it is negotiable.
Or would that be assumed by the customer?

Also, once I quote a price like that, is it assumed that the rate covers
all of my expenses? For instance, if the customer requests to meet in
person at his office, do I simply charge that rate for the time it takes
me to get to his office and pay for the gas out of that? Or would he
expect to pay the hourly rate PLUS actual out-of-pocket gas expense (or a
fixed rate like 50 cents a mile?) I'm embarassed that I don't know this
already but I just want to be sure that I don't cause myself trouble by
doing things in a manner that he will consider unprofessional.
 
R

Roedy Green

In a nutshell, if I tell him $10/hr, I think I'll be signalling that I'm
so awful that that's the best I think I can get. If I tell him $100/hr, I

to play fair, you need to bid a fixed price for the whole project.
There is no reason he should be paying for your education.
--
Roedy Green Canadian Mind Products
http://mindprod.com
For me, the appeal of computer progamming is that
even though I am quite a klutz,
I can still produce something, in a sense
perfect, because the computer gives me as many
chances as I please to get it right.
 
S

Stefan Ram

Novice said:
For instance, if the customer requests to meet in person at
his office, do I simply charge that rate for the time it
takes me to get to his office and pay for the gas out of
that?

My personal decision: The first personal meeting with a new
customer is always »free of charge and without obligation«.

Otherwise, personally, I would say that meetings in my home
town are free, when they comprehend less than, say, 5 % of
the time of the paid work and less than 2 hours per month.

Also, meetings to initiate or negotiate the contract should
not be charged, but meetings to work out details of
requirement specifications of a project can be charged.

I already have been paid for meetings by different customers,
so, where I live, this is not uncommon or strange.

I would charge for expenses, when they become significant,
which, in my case means, when I have to leave my home town
and its direct vincinity. However, local craftsmen here charge
a rather high lump-sum for their drive, even if it's small.

But all of the above only reflects my personal view and
my limited personal experience.
 
G

Gene Wirchenko

to play fair, you need to bid a fixed price for the whole project.
There is no reason he should be paying for your education.

Yes, there is. If a client asks for something unusual, he should
pay for all time involved. Obviously, there can be a fine line here.
I have, on occasion, charged less for a learning opportunity, but I
always make the point that I have a lot of skill and experience, and
that it is of benefit even when I am working in an area that I am not
expert in.

Think of it this way. You have to learn what a client wants and
needs. You charge for that, right? So you already are charging for
learning time.

Sincerely,

Gene Wirchenko
 
M

markspace

Thank you! That's a great resource for determining what I should charge.


My feeling on those rates: they're for full-time permanent employees,
not contractors. I.e., they include benefits. I'd at least double
those rates for an independent contractor.

I think not charging customers for your education is fine, but only if
they are paying you full rate. If they force you down too much because
you aren't experienced, then they do pay for everything, because they're
paying for a novice engineer.

As for selling yourself, I do this rather carefully. You don't have to
describe yourself as a "hobbyist" but do describe yourself as a
beginner. DO NOT sign a contract that describes you otherwise. (If
you're not used to signing contracts, get advice on how to do so.)
Describe your actual experience in web design, including working with
people on a team, meeting deadlines, being professional, commitment,
etc. Sell the experience you actually do have. Let the customer decide
whether you are qualified.

I don't like fixed-price contracts. Estimating software is hard, and as
a novice you've got no basis to work from. I'd seriously push time
estimates on the customer; make sure the contract you sign is for an
hourly rate. At your level of experience you can only meet with
disaster if you try to provide a fixed time and cost contract.
 
S

Stefan Ram

markspace said:
I don't like fixed-price contracts. Estimating software is hard, and as
a novice you've got no basis to work from. I'd seriously push time
estimates on the customer; make sure the contract you sign is for an
hourly rate. At your level of experience you can only meet with
disaster if you try to provide a fixed time and cost contract.

If possible, an »agile« methology might provide a path in between.

Make fixed-priced estimates and contracts only for small project
iterations. This means that experiences made during the previous
iteration (step) can be used when estimating and negotiating the
next step. There is some risk, that each party can choose freely
to not enter into the next step.

What about liability risks? When a consultant agrees to create
something for some fixed price until a certain date, to what extend
can he be liable, if he just does not manage to do this, say, for
example, because of an accident makes the consultant bed-bound?
The customer might claim that he now is losing millions.
 
N

Novice

markspace said:
My feeling on those rates: they're for full-time permanent employees,
not contractors. I.e., they include benefits. I'd at least double
those rates for an independent contractor.
Good catch! I didn't realize that. That changes things considerably for
me....
I think not charging customers for your education is fine, but only if
they are paying you full rate. If they force you down too much because
you aren't experienced, then they do pay for everything, because they're
paying for a novice engineer.
Fair enough. So you'd suggest asking something like $80/hr (I was leaning
toward $40 based on the payscale page) and explaining that I would not be
charging them for my learning time at that rate, right?
As for selling yourself, I do this rather carefully. You don't have to
describe yourself as a "hobbyist" but do describe yourself as a
beginner.

I know that "hobbyist" is not the best word but I wanted something that
would suggest enthusiasm and imply that I wasn't a beginner. I've
actually been coding in Java since 1998 (with a gap of a few years). I
just haven't been getting paid for most of that coding. "Beginner" sounds
more like a guy who just started into Java a few months back. Even
"advanced beginner" sounds better than "beginner", although it has a bit
of an oxymoron feel....
DO NOT sign a contract that describes you otherwise. (If
you're not used to signing contracts, get advice on how to do so.)

I've signed contracts before - I'm one of those weird people who actually
READS documents before I sign them (at least most of the time) - but any
gotchas or common mistakes you can point me to would be very helpful.
Describe your actual experience in web design, including working with
people on a team, meeting deadlines, being professional, commitment,
etc. Sell the experience you actually do have. Let the customer decide
whether you are qualified.
Fair enough. I'm not the most self-confident person in the world in the
first place and I do tend to get pessimistic on whether my experience is
adequate when applying for jobs. Sometimes, I disqualify myself without
even giving the customer a chance to decide and I'm not always sure that
was appropriate.
I don't like fixed-price contracts. Estimating software is hard, and as
a novice you've got no basis to work from. I'd seriously push time
estimates on the customer; make sure the contract you sign is for an
hourly rate. At your level of experience you can only meet with
disaster if you try to provide a fixed time and cost contract.

He's actually asking if I'd do the work on a fixed-price contract given a
spec. Given that I'm chronically over-optimistic on how long things will
take, a fixed price contract would seem to be a very bad idea. But how do
I resist that? What are the standard justifications for saying no to that
question?

Also, when you say that you'd seriously push time estimates on the
customer, I'm not sure what you're saying. Can you clarify please?
 
N

Novice

(e-mail address removed)-berlin.de (Stefan Ram) wrote in @ram.dialup.fu-berlin.de:
My personal decision: The first personal meeting with a new
customer is always »free of charge and without obligation«.

Otherwise, personally, I would say that meetings in my home
town are free, when they comprehend less than, say, 5 % of
the time of the paid work and less than 2 hours per month.

Also, meetings to initiate or negotiate the contract should
not be charged, but meetings to work out details of
requirement specifications of a project can be charged.

I already have been paid for meetings by different customers,
so, where I live, this is not uncommon or strange.

I would charge for expenses, when they become significant,
which, in my case means, when I have to leave my home town
and its direct vincinity. However, local craftsmen here charge
a rather high lump-sum for their drive, even if it's small.

But all of the above only reflects my personal view and
my limited personal experience.


Thanks Stefan, that sounds very close to what I want to do myself. The main
thing is that these are things that typically get worked out between the
customer and the contractor, not something that that everyone does the same
way every time. The customer is not going to feel I am unprofessional if I
raise these issues and negotiate them. Right?
 
N

Novice

to play fair, you need to bid a fixed price for the whole project.
There is no reason he should be paying for your education.


The problem is that I have always been an overoptimistic estimator and that
was when I was working in a shop and knew the methodologies being used,
like structure diagrams.

The problem is much worse on this project because I'm not even sure I'm
going to be able to understand his spec since it probably involves
methodologies I don't know. For example, if he gives me UML diagrams, I'm
going to have to take a bit of time to learn how to read a UML diagram
before I know what the diagram is saying.
 
N

Novice

Yes, there is. If a client asks for something unusual, he should
pay for all time involved. Obviously, there can be a fine line here.

Exactly! Finding that fine line is not so easy. Basically, if someone
asks me to code functionality into a program that involves techniques or
APIs that I've never used, I consider that something that I should learn
at my own expense.

For instance, the project in front of me calls for construction of queues
of files and transferring of those files to a user-selected server in a
Java application. I know that Java has classes for various kinds of
queues but I've made very little use of them. I think I can learn them
fairly quickly by looking for some examples in Google and doing a few
simple prototypes but I don't feel like I should charge the customer for
that time since I think he expects me to know how to do the queueing
already. Ditto for doing the file transfers. Offhand, I'm not even sure
if Java can do a file transfer like an FTP and I've certainly never done
one in a Java program; I typically use Ant to automate the FTP of files.
So figuring out those transfers is something I feel I should do on my own
time.

Now, if the technique involved were a lot more exotic or leading-edge,
I'd be more inclined to your point of view. For instance, if they wanted
me to communicate with a satellite in orbit over some kind of encrypted
network, which seems like something even most senior developers don't do,
I'd be more inclined to regard this as (self-?) education the customer
should pay for. Queueing and file transfers feel too routine to qualify.
But maybe that's just me....
I have, on occasion, charged less for a learning opportunity, but I
always make the point that I have a lot of skill and experience, and
that it is of benefit even when I am working in an area that I am not
expert in.
Do they ever ask you to prove that? If so, how do you do it? I just mean
that body language and a confident tone of voice are all that a customer
needs to sometimes but what if they been burned by someone who seemed
self-confident and had turned out to be a dud and now wanted some kind of
proof that you have enough skill and experience? Do you just refer them
to your resume and references or is there more to be done?
Think of it this way. You have to learn what a client wants and
needs. You charge for that, right? So you already are charging for
learning time.

I agree that learning his specific requirements is something I'm learning
that I will charge him for. I'm more concerned about specific techniques
like queueing or file transferring and whether those should be treated
the same way.
 
M

markspace

He's actually asking if I'd do the work on a fixed-price contract given a
spec. Given that I'm chronically over-optimistic on how long things will
take, a fixed price contract would seem to be a very bad idea. But how do
I resist that? What are the standard justifications for saying no to that
question?


I can't give you one. If the customer actually has a reasonable
specification (and not just a wish list), then the only reasonable
counter offer is "I can't estimate this."

You can try to estimate it-- start working on the spec. See what it
entails. Are you really capable of doing it? How long is it taking?
In essence here you're building a prototype to estimate the job.
Remember that estimates are hard and usually take time and cost money.
If you get to a point where you really can't see spending more time on
it, consider giving them a partial estimate for the parts you can do.
It's better than nothing.

Also, when you say that you'd seriously push time estimates on the
customer, I'm not sure what you're saying. Can you clarify please?


I mean give them a rate and let them determine how long it should take
someone of your experience.
 
G

Gene Wirchenko

[snip]
I have, on occasion, charged less for a learning opportunity, but I
always make the point that I have a lot of skill and experience, and
that it is of benefit even when I am working in an area that I am not
expert in.
Do they ever ask you to prove that? If so, how do you do it? I just mean
that body language and a confident tone of voice are all that a customer
needs to sometimes but what if they been burned by someone who seemed
self-confident and had turned out to be a dud and now wanted some kind of
proof that you have enough skill and experience? Do you just refer them
to your resume and references or is there more to be done?

I could say that there are similarities in all analysis and
programming. If it gets too far with the suspicion, I would decline.
Trust is very important. If I am not getting any to start with, what
would happen in the future? Working under those conditions could be
nasty.

I had an interview with one person for a job where he insisted
that it would all have to be his way regardless of any technical
issues. Maybe, he had been stung. I do not know. What I do know is
that I was unwilling to work with him. I have expertise. To tell me
that I can not use it in its area is an insult. On my way back to
town, he called to tell the people who had sent me, no. A few months
later, he called me (left a message). I did not return the call.
I agree that learning his specific requirements is something I'm learning
that I will charge him for. I'm more concerned about specific techniques
like queueing or file transferring and whether those should be treated
the same way.

If in doubt, charge.

Sincerely,

Gene Wirchenko
 
R

Rhino

markspace said:
I can't give you one. If the customer actually has a reasonable
specification (and not just a wish list), then the only reasonable
counter offer is "I can't estimate this."

You can try to estimate it-- start working on the spec. See what it
entails. Are you really capable of doing it? How long is it taking?
In essence here you're building a prototype to estimate the job.
Remember that estimates are hard and usually take time and cost money.
If you get to a point where you really can't see spending more time on
it, consider giving them a partial estimate for the parts you can do.
It's better than nothing.
Is it reasonable to tell him that I won't commit to the project or offer
any estimates until I feel I understand the spec? That would seem fair to
me but I don't know if a customer would see it that way. I'm assuming I'd
have to sign a non-disclosure agreement before he'd let me see the spec.
At that point, I could imagine spending several days or maybe even a
couple of weeks poring over the spec and making sure I'm clear on what he
wants, then passing on the project altogether, passing on parts that I
didn't think I could do, or accepting the whole project.

I could easily imagine this taking a few hours of the customer's time as
I confirm assumptions that I make as I read the spec. I'm not sure how he
would feel about a drain on his time like that. Would that be something
he'd expect? Or would he expect me to be so self-sufficient that anything
beyond a few cursory questions would be a problem for him?

Also, would you agree that he should be charged for the time I put into
understanding the spec (aside from a token free initial hour or
whatever), even if I end up passing on the project altogether?
I mean give them a rate and let them determine how long it should take
someone of your experience.
I'm getting the impression so far that they are basically a PHP shop and
don't have much/any Java expertise so I'm not sure how they'd estimate
things like coding time. How would they estimate tasks that maybe can't
be done in their shop language? But maybe I'm wrong and they do have some
strong Java people and just have them over-committed for the time being.
I don't think I'd want to commit to estimates that were made by someone
that wasn't at least as expert in Java as I am, and preferably more so.
 
M

markspace

Is it reasonable to tell him that I won't commit to the project or
offer any estimates until I feel I understand the spec?

If you feel the spec is lacking, then certainly. It might be best to
wait until you see what the customer is offering first.
That would seem fair to me but I don't know if a customer would see
it that way. I'm assuming I'd have to sign a non-disclosure agreement
before he'd let me see the spec.

NDAs are normal, yes.
At that point, I could imagine spending several days or maybe even a
couple of weeks poring over the spec and making sure I'm clear on
what he wants, then passing on the project altogether, passing on
parts that I didn't think I could do, or accepting the whole
project.

Don't forget to calculate what you'd make in those days or weeks at your
normal rate. Decide if you wish to donate that much money to the customer.
I could easily imagine this taking a few hours of the customer's time
as I confirm assumptions that I make as I read the spec. I'm not
sure how he would feel about a drain on his time like that. Would
that be something he'd expect? Or would he expect me to be so
self-sufficient that anything beyond a few cursory questions would be
a problem for him?

That's their look-out. You're donating time to start the project, they
should too. If they complain, then work something out, or ask them to
look elsewhere.

Also, would you agree that he should be charged for the time I put
into understanding the spec (aside from a token free initial hour or
whatever), even if I end up passing on the project altogether?


That's up to you, although I'd certainly consider adding any upfront
costs to a bid that I made.

I'm getting the impression so far that they are basically a PHP shop
and don't have much/any Java expertise so I'm not sure how they'd
estimate things like coding time.


This is a large red flag for me. If they have no idea what they're
doing, then there's no recourse for you if things go sideways. Be very
careful. Programming can be relatively easy. Configuring a production
environment is a different story. And specing out server hardware is
harder still. Try to exclude installation of the software if you can.
 
N

Novice

markspace said:
If you feel the spec is lacking, then certainly. It might be best to
wait until you see what the customer is offering first.


NDAs are normal, yes.


Don't forget to calculate what you'd make in those days or weeks at
your normal rate. Decide if you wish to donate that much money to the
customer.


That's their look-out. You're donating time to start the project,
they should too. If they complain, then work something out, or ask
them to look elsewhere.




That's up to you, although I'd certainly consider adding any upfront
costs to a bid that I made.
So that's not an unreasonable thing to ask, although I shouldn't take it
for granted that he will go for it, right? He might want me to commit
within a day of getting the spec; if that happens and I'm not comfortable
yet, I think I'd be crazy (or foolhardy) to go ahead with the job.
This is a large red flag for me. If they have no idea what they're
doing, then there's no recourse for you if things go sideways. Be
very careful. Programming can be relatively easy. Configuring a
production environment is a different story. And specing out server
hardware is harder still. Try to exclude installation of the software
if you can.
All good points. Their website describes them as a PHP shop but that may
omit tons of expertise in other technologies that aren't universal within
the shop. I think I need to find that out pretty clearly before reacting
as if it is a certainty that they have no Java expertise.

I don't even know for sure if they are expecting me to do the whole
project or they just want me as one person on a team. It feels like the
former but they haven't actually said one way or the other.
 
A

Arved Sandstrom

(e-mail address removed)-berlin.de (Stefan Ram) wrote in @ram.dialup.fu-berlin.de:

That's certainly what I want to do. Sometimes though, I get the
impression that consultants claim to know much more than they actually do
and then scramble like mad to do the actual work when they get the job.
Sometimes, they rise to the challenge and manage to do an acceptable job.
Other times, things don't turn out so well.

Some consultants - or the consulting bosses who hire them out, if they
work for a larger consultancy - do skirt the truth, or overly embellish,
or lie. It's not an ethical or productive thing to do.

It's always, IMO, abundantly clear in a contract as to what you should
be knowledgeable about, and how expert you should be on this thing or
that other thing. And you had best be, because that's the expectation of
the client.

General-purpose Java programmers - even consultants - do not tend to be
experts, and reasonable clients don't expect that. What they do expect
is journeyman competency. Effectively a client in this scenario wants a
contractor who will perform at least as well as someone he might want to
hire FT for the equivalent position. If that equivalent position is not
that of a technical architect or senior analyst, but of an intermediate
programmer, then there is not usually an expectation that the contractor
will have the skills of a senior architect (the subject of
skills-contract needs mismatch is a whole different topic).

An example of a mistake one could make is to be knowledgeable in JSF
only, say, but make out like Spring MVC or Struts 2 won't be a problem
either. In fact it almost always will be a problem, in the timeframe of
a typical contract, and you'd be dishonest in letting the client believe
that you could do a competent job of Spring MVC.

[ SNIP ]
Based on the other reply to my question, I'm thinking $40/hr is a good
rate to propose, although I'm inclined to mention that it is negotiable.
Or would that be assumed by the customer?

In North America, for general-purpose Java work done by an
intermediate-level programmer, $40/hr is pretty good for your take-home.
I'd add $10-$20 to cover contractor overhead.

My recommendations are based entirely on your stated level of
experience, the probable nature of the work, the fact that your overhead
very likely doesn't include upkeep on a bricks-and-mortar consultancy
office, things like that.

The client will never negotiate _up_. :)
Also, once I quote a price like that, is it assumed that the rate covers
all of my expenses? For instance, if the customer requests to meet in
person at his office, do I simply charge that rate for the time it takes
me to get to his office and pay for the gas out of that? Or would he
expect to pay the hourly rate PLUS actual out-of-pocket gas expense (or a
fixed rate like 50 cents a mile?) I'm embarassed that I don't know this
already but I just want to be sure that I don't cause myself trouble by
doing things in a manner that he will consider unprofessional.
Your rate covers usual travel, as a rule. We're not talking about air
travel here. If the contract *work* entails travel, that's a different
matter.

AHS
--
You should know the problem before you try to solve it.
Example: When my son was three he cried about a problem with his hand. I
kissed it several times and asked him about the problem. He peed on his
hand.
-- Radia Perlman, inventor of spanning tree protocol
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top