Actually, we don't need it.



  •  Some time ago the company I work for won a big contract with a household-name company to provide a version of our website and service, rebranded to appear as if the other company was providing it. Part of the deal was that their version of our site (still pointing to our DB) would have to have the same look-and-feel as the rest of their sites. And they have some strict requirements. They even have a website that exists purely to tell other people how to make sites look like theirs. The mockup we did that basically replaced our logo with theirs certainly isn't good enough.

    Fair enough, but not possible with our current system, and too much work for us to do in-house to make it skinnable. So we cast around and enter into an agreement with an Indian firm. Things actually go quite well. We spec it all up and several months of development and testing is undertaken, and at the end of it we have a system that we can completely skin, and apply different skins to different URLs etc. It all works very well. I was expecting it to be an enormous train-smash of a WTF, but no, it works as intended. Sure there were bugs along the way but they got caught and fixed. Currently it works very well.

    So we deploy it to our staging system and tell Marketing to go and have a play with it and try and create a skin that will meet the customer's requirements. They create a skin and say they are happy with it. The client looks at it and they are happy with it. I don't look at it cos I've got a million other things on.

    A few weeks later I'm making preparations to make this thing live and I'm doing some testing and can't find the skin. I ask Marketing and it's pointed out to me - the one that is the same as ours but with their logo instead..... is this definately the one?

    "Yes, they decided that it was separate enough from the rest of their business that it didn't need to meet the design requirements - great, hey?"

    Yes, great. That would be something like 6 months and untold tens of thousands of pounds wasted then. But on the plus side, we've got a great skinning system. Even if we don't actually need it.



  •  I hope you could still bill the client for all of the expenses made. Otherwise you sir, have been totally screwed.



  •  Bill the client?

    Maybe I should have been clearer. We make money on what they sell.;.. there's no way we'd be allowed to bill them for anything as silly as development.



  •  initial screwing then



  • @valerion said:

     Bill the client?

    Maybe I should have been clearer. We make money on what they sell.;.. there's no way we'd be allowed to bill them for anything as silly as development.

     

    I, being a student and all, don't have a lot of experience on how software developing companies bussiness works, but wouldn't a custom-developed piece of software (or in this case website) be specced, following by a contractual invoice (not the proper word, I don't know the proper english word: a specification of work that will be done, on what time terms and at a specific price) before a company starts developing?


  • Discourse touched me in a no-no place

    @dtech said:

    I, being a student and all, don't have a lot of experience on how software developing companies bussiness works, but wouldn't a custom-developed piece of software (or in this case website) be specced, following by a contractual invoice (not the proper word, I don't know the proper english word: a specification of work that will be done, on what time terms and at a specific price) before a company starts developing?

    Welcome to the world where sales dictate what you do, your manager says you don't, and you are between them both, yet are expected to deliver.

    Happy times.



  • @dtech said:

    I, being a student and all, don't have a lot of experience on how software developing companies bussiness works, but wouldn't a custom-developed piece of software (or in this case website) be specced, following by a contractual invoice (not the proper word, I don't know the proper english word: a specification of work that will be done, on what time terms and at a specific price) before a company starts developing?

    You *do* know a proper English phrase, just not the most common.  Yes, a specification of work to do, or a 'statement of work' (more common term), or a 'spec' (less formal) *should* be required.

    There are many companies that try to get away without following all the proper steps in the process.  Sometimes, they get away with it - enough that some continue attempting this even in the face of the problems that the proper process is designed to solve.

    Generally, most WTFs I've encountered come from companies on either end of the spectrum.  That is, companies that never (or almost never) require specs for anything, or companies that always (or almost always) require specs.  The former have WTFs because they have no protections against them.  Not only do they not require specs, but they don't1 do testing, they don't1 have design review, they don't1 have code review, they don't1 do budget reviews2.  The latter have WTFs because they have unthinking adherence to process, and also either have little thinking going into their writing of process, or their process is far too complex4 for the minds of the unthinking people who are tasked with implementing it.

    1 Generally.

    2 But they probably have a lot of budgetary obstacles.  The difference is that there's no reasonably achievable way of surmounting said obstacles - other than just spending the money anyway and trusting the lack of review to carry you clear3.

    3 A very bad plan - it jeopardizes your entire career, as virtually nobody will hire ever again you if you're caught doing this.  Those places that will hire you generally won't give you any position with a budget.

    4 For example, IT Security policy at company C11 says that no users will have any software not on the approved software packages list on their company computers without a waiver from IT Security.  Bill is a Java programmer, hired for his Java expertise.  The approved software packages list does not include any JDKs.  Bill5 goes to IT Security for a waiver.  The IT Security staff point at that policy and indicate that is why he cannot get a waiver to have a JDK on his system.  Bill works for company C for 6 months without doing any work, because he's not able to get the software he needs to do his job.  In the end, his project is canceled, because "Java's too insecure"7.  He's then given a month to find another job, either elsewhere in the company, or at a different company9.  Two months later10, he finds a job at another company.  His reference raves about him - "best Java programmer we've ever hired."

    For those who followed along properly, the policy allowed for Bill to get a JDK, but the people who needed to review it didn't understand the policy.

    5 A programmer who has written code more complicated than this policy for fun, in his spare time.

    6 There was a post around here at some point, but all I can find are footnotes!

    7 That's not me making that claim.  I may have difficulty writing secure Java code, but only in so much as I don't actually know Java.  I just debug it sometimes.

    8 What happened to 6?

    9 I was going to say something here.  However, I've spent enough time in a VBC (which is not quite this messed up) that it seems to go without saying.

    10 That's two months after the one month - 9 months from his hire date.  It took a bit longer than anticipated, in part because company C is known for not being Java-savvy.  Note that his job was secure - process requires that an employee cannot be fired for poor performance without giving six months to improve performance, and they didn't give him anything which constituted notice of poor performance until after the first 7 months.

    11 Disclaimer: I've never worked at company C.  I used to have a coworker (a Java developer, actually) who did an 8 month stint with them at one point, however.  Interestingly, they said he was the best Java developer they've ever hired.



  • @dtech said:

    @valerion said:

     Bill the client?

    Maybe I should have been clearer. We make money on what they sell.;.. there's no way we'd be allowed to bill them for anything as silly as development.

     

    I, being a student and all, don't have a lot of experience on how software developing companies bussiness works, but wouldn't a custom-developed piece of software (or in this case website) be specced, following by a contractual invoice (not the proper word, I don't know the proper english word: a specification of work that will be done, on what time terms and at a specific price) before a company starts developing?

     

     

    Ah, you will come to learn... there is how it should be done, and how it is done.

    In this case, we are not a development company as such. The big company is going to be reselling our existing stuff (just branded as them). Therefore our managements eyes lit up with flashing jackpot signs and bent over backwards (and forwards) to do anything to please the big company. We will not be billing them a penny for anything as insignificant as development. Wouldn't want to anger them, after all.

    Ironically I went through all of this with the same big company a few years back, before the firm I worked for got bought out by the people I now work for. This "huge" contract back then bought in pretty much feck all money. Certainly not enough to pay for the work that was done. You'd think the lesson would be learned...


Log in to reply