3 ms·
Ask HN: Questions to ask from client before starting on a project
I have an upcoming meeting with client to discuss some frontend work he wants me to do.
I already had a meeting with him discussing an overview of what he wants on the frontend side. Its basically a dashboard with a tool to perform measurements using a lib and to show some graphs based on that measurements.
I am wondering what kind of questions should I ask to make sure requirements and expectations are clear from both sides (should I ask
a requirement document from his end)?
And how should I go about costing my work?
- ilaksh 5y agoDo not do programming work on a fixed fee basis. Agree to an hourly or daily rate. You will want it in writing. Look for some contract templates online. Do not sign a contract with a fixed scope. That is fictional. Make sure the contract is structured for pay for your time and fast iteration. If you can't find a contract like that then you will need to carefully read and modify the contract. I think you should tell him what your plan is for the first day of work. And that should probably be tackling the meat of the problem somehow. Maybe figure out how to do the measurement and get some code for that. Have him sign off on your plans ahead of time. Set up a daily meeting if possible. Maybe a Discord or a phone call. After the first day of work, show him what you accomplished or what you were researching and request payment. Don't do more work until you receive it. Keep the iterations as short as possible. You make some progress, show him, get paid, then after getting paid move on to the next cycle. As you build up trust you can increase the duration of the iterations. But never more than two weeks. If possible being available for daily communication as needed is desirable and often necessary. As far as the requirements go, do not assume that he knows what he actually needs just because he clearly says he needs a dashboard. What you want to try to figure out is what his job is and how he really is going to use that tool. Why does he need this tool? What will he do with the data from the graphs and how will he benefit from it? Ideally you get enough information so that if he is absent from this part of his job, you can take over for him. He thinks that the solution to his problem is this measurement and dashboard. There is a good chance that is actually a shit solution. But he is not a problem solver so it's the best he can do. You are the problem solver. Many business people or so called analysts or civil engineers think they know how to determine requirements. The most challenging part about programming is realizing that no matter how sure they are about their requirements, they do not have problem solving skills and so their requirements they give you are probably wrong. You have to be Sherlock and create the requirements for them. Having said all of that, it's sometimes very hard to do that tactfully and effectively. Having short iterations and communicating clearly and frequently, getting work pre-authorized can be very helpful to ensure that at least you don't lose a lot of money.
- 2bor-2n 5y agoWhy an hourly rate? Isn't it a bad idea if you are very efficient with your work?
- ilaksh 5y agoThe real scope of the project is not known. As I said you must discover the true requirements. Even if you just did exactly what he said, they always change their mind and add more. Fixed scope is as I said a fiction and structurally false. If your goal is to try to sell him a large sum and then come out ahead by easily completing the task in a relatively short while, just realize that he has a similar but opposite goal with such a structure. And even if he isn't trying to squeeze as much work out as he can, like I said the scope always increases naturally. What you do need to do is make sure that he has a budget sufficient for his ambitions and if he doesn't make it clear that you believe that will limit the success of the project. If you want to make a lot of money by selling something for an outsized price, then maybe become a used car salesman or something. Having said all of that then if possible bill for half-days or full days. Just make sure he agrees ahead of time.
- brudgers 5y agoWhat is your budget? Do you have all the money for the project on hand already?
- 2bor-2n 5y agowhy are you asking me about the budget, i am not the client :)
- brudgers 5y agoThose are the questions to ask the client. Scope should match client wherewithal for payment. Discussion of money is an integral part of preparing a proposal. It is also the touchstone of client relations. Your expectation of payment is at least as important as the client’s expectation for project completion.