Questions to ask before starting a web design job

krogen

[H]ard|Gawd
Joined
Jul 22, 2009
Messages
1,076
Hey guys,

I have recently found a programming/web design gig that I could perform. Nothing major, it would require me to write some PHP code, possibly modify an SQL database, and set up some cron jobs on a webserver.

I am not a professional in the field, just a computer science student, and I'm not exactly sure what to ask the customer. I know how to perform the tasks, just unsure what to ask the customer.

My question is, should I request a limited account on the webserver itself (Centos, which I am familiar with)? Keep in mind that I do not know the customer, so if I were to perform the task, for all I know the account would be deleted and I would be left with no cash.

Or should I request the source code of the website, so I could work on it locally?

What are some other questions that I should ask, before doing the job?

Thanks guys.
 
Since you haven't given details about your project specifics, I can't say exactly what you should do. Typically when I work on a web site either from scratch, or in your case, modifying an existing one, then I will request access to the server. Of course it'll depend on the company on how much access they will give you.

My typical development stages are like this: I'll develop locally working off a local copy of the site and database, then deploy to a staging server on the clients web server in order to test. And if it works, then I migrate the site from the staging server to the production server which hosts the live site.

The staging server is usually just a copy of the live site, and if it's not a large scale site, then the staging server can just reside on a subdomain, like "staging1.mysite.com" and then I just simply copy the files to www.mysite.com once they are ready, or I'll just make another virtual web host account if having the exact same directory structure from the webroot is important. If it's a large scale site, we'll copy everything and have a copy of the live web server environment on another server (or VPS) and perhaps database server as well.

It sounds like you aren't making large scale changes, so maybe just copy the database on their server and work off that test database first. In these situations, I'll often just SSH to a Linux server, use VIM to program from the the console and make my edits and test my changes live on the server itself, avoiding having to develop locally first, but it depends on the breadth of changes you are doing.

If you are worried about them ripping you off, make them sign an agreement. I usually write up a proposal, and have them sign it before I begin work.

Also you may want to look into source control (Subversion, Mercurial, etc) if you want to keep track of your web edits and revisions.

In short, ideally I want full access to the web server as it is the most efficient way for me to develop but sometimes this is not possible and you'll have to give your files to a system/web administrator and instruct them how to deploy your files. I have had to write detailed instructions, but I will factor that time writing those instructions into my quote.
 
I've been doing this for a while. So I'll chime in with a few key points.

Either:

a) take a copy, work locally or remotely on YOUR server(s) and allow them to VIEW the progress.

or

b) take a 50% - 60% deposit.

Option a, keeps you in control should they decide not to pay, they do not have the changes or work that they requested and cannot simply run off into the sun. Option b, gives you some of if not most of the money they promised, should they decide to dissapear.

Do not work on their servers without a deposit. An agreement means nothing and most people won't care what it says or what legal implications you promise. Protect yourself, work on your own hardware and let them see or take a deposit.
 
Hmm.. good point Donut. So far I've only worked on web sites for people I know in real life as friends or friends of friends and I haven't taken a deposit and worked off of their servers. But yeah, I can see how some people would take advantage of that and run once the work is done. Those people really suck! lol.
 
Hmm.. good point Donut. So far I've only worked on web sites for people I know in real life as friends or friends of friends and I haven't taken a deposit and worked off of their servers. But yeah, I can see how some people would take advantage of that and run once the work is done. Those people really suck! lol.

I had someone bail on a very expensive project before I learnt this lesson. :)

Now, I never work without a deposit or without doing so on my server and restricting their access. Keep the power on your side or take enough upfront to cover losses and then some.
 
Thanks guys, this is all valuable information.

I have another question... What am I supposed to charge? I don't count the hours I spend before a computer. Lots of it is research, debugging, and thinking how the project should be done.
 
I'll keep that in mind if/when I venture out to lesser known clients! :)

I have no personal experience, but I have a friend that runs a small business, and it's not just "lesser known clients" that give him trouble. He's had larger well known places try to skip out on a $50k bill and such. He winds up having to write off a significant amount.

Amazing thing is how many companies will shaft you on the bill and then have no shame coming back a year later expecting free support.

Anyways, lesson is to protect yourself with everyone, not just places you think of as potentially shady; they all are!
 
What are some other questions that I should ask, before doing the job?
You should ask them what they want you to do. If they'd rather have you work remotely or locally, you should be happy to accommodate their wishes.

It seems highly unlikely that they'd let you take a complete copy of their site's code away with you. The exposure is just too great.
 
Last edited:
I don't doubt that, that would really suck :/. I just meant that people I don't know well personally.
 
It sounds like you need them to tell you what the want done. Finding out project specifics, what they expect you to do (adding new code, modifying current code, etc). Encourage them to start source control/versioning if they aren't using it (most of these small businesses won't have a clue, and if you don't know much about source control, look into it).

I've been doing this for a while. So I'll chime in with a few key points.

Either:

a) take a copy, work locally or remotely on YOUR server(s) and allow them to VIEW the progress.

or

b) take a 50% - 60% deposit.

Option a, keeps you in control should they decide not to pay, they do not have the changes or work that they requested and cannot simply run off into the sun. Option b, gives you some of if not most of the money they promised, should they decide to dissapear.

Do not work on their servers without a deposit. An agreement means nothing and most people won't care what it says or what legal implications you promise. Protect yourself, work on your own hardware and let them see or take a deposit.

This is sadly the most important thing any freelance dev needs to note. When I used to freelance, this did happen to me (with a couple of people I knew and had done work with before); thankfully, it was only for a couple hundred. When my brother got into freelancing, I frequently asked him, "Have you been paid at all?", "When is this guy going to pay you?". I must have asked him a dozen times, and eventually the guy disappeared after getting what work he wanted done ;)

Anyways, lesson is to protect yourself with everyone, not just places you think of as potentially shady; they all are!
Yes, and leave a backdoor for you should the need for retribution arise... just kidding... (or am i?)
 
So I finished the project for him, and I must say, it was a really good experience.

I didn't follow what some of you mentioned, to get everything in writing. Probably a pretty bad idea on my part, but it looks like everything will end well.

The guy never told me *exactly* what to do, even though he mentioned he would write out a bulleted list. So I went on with what I thought would work out, and he seemed to like what I did.

As I mentioned, I'm a computer science student without any real work experience. It now seems to me like a great way to start in the field, and get some professional references while at it.

For the people who are wondering about this, especially students, I say... Go for it.
 
In the future you should always have a contract that specifies the scope of the project and the payment amount and schedule. Then, you have something to stand on if (when?) a client tries to screw you.

And, while it is certainly tempting to market your services as a designer or developer when you are in school, but make sure you have enough skill to do the projects you agree to and request a fair wage for the project. As a freelance designer I have run into quite a few clients who turn away freelancers because they have had students or new people flake on them or produce crap. Also, I've had people shoot down my rates (which in the greater scheme of Web Designers in the Boston area is pretty reasonable) because they know people who have had a guy do it for 20 bucks an hour.

Sorry for the rant, just some advice I wish I had starting out.
 
Back
Top