View Full Version : Budgeting for Flash Contract Work

04-01-2005, 10:11 PM
I work for a specialized hardware manufacturer. (Note, "hardware" here is used to denote "not software." I'm not referring to SnapOn Tools.) Our department is pitching a software solution to fulfill some of our needs.

We need some figures to work with. What I need to know is "What is the going rate for AS2 project work?"

We are going to need to submit a project budget, after I lay out the objectives. I have no idea how contracts are written for Flash programmers. Are they "piece work" or "hourly" or "day rate?" I know that it'll eventually be "whatever the two entities agree to," but I need to have a ball park figure or formula for determining a budgetary amount going in.

We have our own web department, so this is for actionscript coding, ONLY. I will lay out function names and objectives, and specifics can be discussed via email, telephone, or whatever means are mutually convenient. The coder would be required to provide functions that meet the criteria laid out. None of the codework will initially require web-based anything, and I doubt it ever will.

One example project might be:

"Provided a group of ASCII-formatted text files, write a function that will output the text files to an 8 line by 24 character display. Code should be able to accept filename as the variable, and parse the ASCII text using <some char> as the delimiter for line breaks. Function will run in a projector file. Function name is "abcDisplay()." Text files can be located and formatted in any manner necessary, within reason (XML or comma-delimited; written to the same folder; other format as required).

"Includes: two vector-based graphics of display (one graphic with output area highlighted in red; one graphic to use in FLA); three sample text files in ASCII format (file1.txt, file2.txt, file3.txt); three photographs of actual equipment with sample text on screens (jpg format)"

That's just something off the top of my head, not for an actual project. Note that I don't care how this is accomplished, just so it LOOKS similar to the photos once parsed and outputted. I would expect about 20 such functions for the first project, but I haven't done that part yet.

Also, I tried to leave as much open to the coder as possible. More detailed or specific instructions could be provided if necessary, I would expect (more work for me, and probably more headaches for the coder, I'd guess).

So, can anyone help me out with this? If we get the project approved, I'll need to be able to stick to the budget I've submitted.

Thanks for taking the time to read this.

04-02-2005, 01:48 AM
Well, there is no general formula for determining a budget for some project, because different people works on a different way. Most of freelancers (specially newbies who have yet to prove them self, and have a lot of time in their hands) work per-project basis. Professionals usually charge per-hour (as they can't spend more time than it's absolutely needed for the project). And fees could be (in both cases) from $1 to $ [POSITIVE_INFINITY] ...

Now, I can tell you my system of determining budget for a project, or determining my fee if I work on someone other's project, which by no means doesn't have to be the correct and universal way.

Project budget:

This further depends weither I'm doing a project for my self, or I'm hiring a helping hand, to do the boring and time-consuming stuff (or to help me not break the deadline), for someone else's project.

In first case, I usually try to make the budget as cheap as possible ;) It's helping that most of the things I hire people to do for me I already know how to make, but just don't have enough time (or I have a total lack of interest of doing it), and I certainly can determine the right value for that (I calculate how much time I would need for that, multiply that with what would be my fee for such a work, and then divide it with 2 or 3 as I'm going to hire a newbie who would need more time and probably leave a lots of bugs in it). However, when I'm hiring designers I really do a bad estimate, and usually get much more generous than I should. Of course, if I expect to get some money from that project, I take the expected income value in counting as well, in which case I might extend a budget and hire a professional so I wouldn't need later to fix the bugs that were left after newbies.

In second case, I obviously ain't gonna set a bigger budget than the one I'm getting for completion of the project. So, top budget for project is what I get for it, then again I estimate how many percents of the project will I pass over to people I hire, and that's their budget. And in dependence of that budget, I choose professionals or newbies. Of course, i take a tiny bit off of that budget because I'm handling the project, I'm the one who would need to explain and possibly fix errors that others made, etc.

In both cases, budget definitely depends on what needs to be done... I mean, even if I have a $10000 budget for making a simple, let's say Flash RSS reader (not that anyone would give such amount for such small project, but again it's an example), I wouldn't pay $2000 to someone to make a good tree indexer component - for that kind of money I would do it my self ;) - as that's several hours of work at most.

I was hiring various programmers with wages from $5/hr to $100/hr, or from $20 to $5000 in per-project basis arrangements... Which doesn't mean that it's actual 'price', but I find those figures quite real for today's market.

As for determining my fees, I take a lots of things into final calculation.
I generally prefer working on per-hour basis as I've trained myself quite enough to give good estimates. I work per-project basis only if project is really big and takes months to complete.

I value myself from $20 to $60 / hr (someone might not agree that I'm worth that much, but I don't give a damn about that ;) ), in dependence on what needs to be done - or to put it better: in dependence on how much of my knowledge will I need to put into it. You can't charge the same for straight AS work, and writing a FE->BE or FE->Socket or FE<->BE<->Socket<->DB combinations. So, generally, although I would spend the hour anyways, I'm charging for my knowledge.

When I work per-project basis (usually when project is too big that I can't estimate time I need for it's completion, so I compare it with my previous work and get a rough estimate) it usually means >$5000 projects (or more than a month needed for completion), there are several models I use.

If I'm doing some work for an old client (with good reputation in my eyes - read it: good amount of coins in my pocket in the past), or for a client that have recommendations from several selected trustworthy people, I'm usually not very 'protective' and generally don't require anything in front, and try to make the best agreement that suits both sides.

If I'm working for someone I've never heard of, or someone with bad reputation, then I require a certain amount just to look at project's data-sheet, give my opinion on the approach that should be taken, and give my estimate. If it suits them, i usually require 1/4 to 1/3 upfront with no guarantees of finishing the project. And when working on such (risky) projects, I tend to insist on a strong, precisely defined contract.

Which bring us to contracts... Generally, there are some old clients for which I do the job without even signing a single piece of paper (except maybe NDA, and eventually compliance for usage of my intellectual property or copyright transfers). Also, I tend to avoid bureaucratic b.s. when working on small stuff ($100-$200 range) - it takes more time to set all those things than actually to build the project, so it all comes to trusting the client (or the person I hire)... So, as you said, it usually ends with "whatever the two entities agree to"...

Also, sometimes I work as a 'consultant' (actually more of a 'problem solver' as it looks like I have a natural talent for finding workarounds and shortcuts ;) ), in which case any of those models (per-hour or per-project) can't be applied - companies (or teams) calls me in to help only when they need it, which can happen once or 10 times in a month, and can take me anything from several hours to a week of work, so precise price can't be determined. In that case, I either work for some fixed monthly fee (which of course depends on the contract we made - e.g. what kind of consulting i do, expected work from me per month, my availability (e.g. how fast they get help from me), etc.), or I calculate spent time at the end of the month and send them an invoice...

So, there you go - you have my perspective from both sides - freelancing and hiring... Again, this certainly doesn't mean that it's the right way to do it, but I'm functioning on that way, and didn't have much complains in both cases... There are other things that should be also taken into account when estimating a budget (e.g. possible lawyer fees if some side breaks the contract ;) ), but I've stated the most important ones...

Hope you'll find it useful...