The 2 Field Solution



  • So, for the last 3 years I've been responsible for a data collection app. The server-side of this app is looked after by another team. 

    When the data app was relatively new (read, not finished - and its still not) we were pushed by management into a customer project. The server side guys rushed out a web service for us to talk to, and in the space of a few days we went from "not ready" to "barely-ready-but-not-tested". 

    3 years later, that web service still exists. And its still the main contact point between my app and the server. And its not changed in all that time - which means its incapable of gathering 90% of the data the app generates.

    At managements request, the app has improved capabilities but still has no way of sending these updated values to the server for reporting. Not that it matters; the reporting guys are yet another team, and they "customised" the database (without input from anyone else), which means the web service doesn't populate the database correctly for the reporting system. So the reporting system ignores it... so... yeap, live data isn't reported on. Until the customer sends it back to us for "analysis", at which point we run a SQL script to update it. 

     Despite constant attempts, I cannot get it though to Management that we need to concentrate on this "product" and finish the app, the web service and the reporting. 

     

    Anyway. Fast forward to this morning. I've just got out of a meeting where the server-side team (with a straight face) decided that rather then re-design the whole web service (which we need them to do) they'll add two fields for one customer project. Will they update the code that writes to the database - no, its out of scope for this project. So...we can record two additional fields. We can't report on them. And they won't fold the changes into their installer (written by me, because they insisted they didn't need one). So the install guys will have to install the server, "apply" this update... and it'll still have all of the major problems it had before.

     

    3 years of "product development", and we're... nowhere. And we're continuing to go no where fast. We move from customer to customer, implementing (badly) custom code while exactly zero product development goes on in the background. We have nothing. How this place gains customers amazes me, but it does and it pays the bills...

     



  • Every company should have your sales team.

    Remember good software doesn't attract customers, marketing salesmen attract customers.

    Good software keeps customers with low overhead.  Bad software keeps customers with high overhead.  Remember, your company probably already sees IT as a cost area rather than profit, when IT can actually enable profit if used properly.



  • @KattMan said:

    Every company should have your sales team.

    Remember good software doesn't attract customers, marketing salesmen attract customers.

    Good software keeps customers with low overhead.  Bad software keeps customers with high overhead.  Remember, your company probably already sees IT as a cost area rather than profit, when IT can actually enable profit if used properly.

    Unless of course you have salesmen under estimating the costs to do the work, and are thus selling products at under the costs to make said product.  I believe there was a daily wtf article here many years back about that happening.  I will see if I can find it.



  • Please, leave your company URL so I can copycat their product and profit. Thanks. I'll buy you some beer.



  • @Anketam said:

    @KattMan said:

    Every company should have your sales team.

    Remember good software doesn't attract customers, marketing salesmen attract customers.

    Good software keeps customers with low overhead.  Bad software keeps customers with high overhead.  Remember, your company probably already sees IT as a cost area rather than profit, when IT can actually enable profit if used properly.

    Unless of course you have salesmen under estimating the costs to do the work, and are thus selling products at under the costs to make said product.  I believe there was a daily wtf article here many years back about that happening.  I will see if I can find it.

    Yep. We had a sales 'manager' (read: field salesman) that would tell customers he can get new hardware/software features added to products that had already been designed.  At no additional cost. Then he'd complain to upper management that he can't sell product because engineering refused to add whatever expensive feature he promised.


  • @frits said:

    Yep. We had a sales 'manager' (read: field salesman) that would tell customers he can get new hardware/software features added to products that had already been designed.  At no additional cost. Then he'd complain to upper management that he can't sell product because engineering refused to add whatever expensive feature he promised.

    I worked at a place where it was par for the course for Sales to sell things that didn't exist. If a potential customer asked if we supported feature X, the answer was always "Yes". They'd sign the contract and as the customer moved to implementation we'd get a support person coming in and asking "Where is the screen to control feature X?" I'd reply "There is no feature X, there never has been a feature X." So then we'd get an ultra-high-priority, all-senior-management-copied bug filed saying "Feature X does not work". I complained quite a bit about this and was told by senior management on several occasions that "We're trying to get them to stop doing that."

    But really, the company liked the sales. And the sad thing was, we were the best product in our market; we were the clear market leader. Our retention rate was only 60% of so on 1 year contracts, meaning every year we lost 40% of our customers. However, we added customers quickly enough to balance out. When I pointed out that eventually we'd alienate every potential customer in the market, I was told not to worry about it.



  • @morbiuswilters said:

    @frits said:
    Yep. We had a sales 'manager' (read: field salesman) that would tell customers he can get new hardware/software features added to products that had already been designed.  At no additional cost. Then he'd complain to upper management that he can't sell product because engineering refused to add whatever expensive feature he promised.

    I worked at a place where it was par for the course for Sales to sell things that didn't exist. If a potential customer asked if we supported feature X, the answer was always "Yes". They'd sign the contract and as the customer moved to implementation we'd get a support person coming in and asking "Where is the screen to control feature X?" I'd reply "There is no feature X, there never has been a feature X." So then we'd get an ultra-high-priority, all-senior-management-copied bug filed saying "Feature X does not work". I complained quite a bit about this and was told by senior management on several occasions that "We're trying to get them to stop doing that."

    But really, the company liked the sales. And the sad thing was, we were the best product in our market; we were the clear market leader. Our retention rate was only 60% of so on 1 year contracts, meaning every year we lost 40% of our customers. However, we added customers quickly enough to balance out. When I pointed out that eventually we'd alienate every potential customer in the market, I was told not to worry about it.

    I'm starting to believe this type of behavior is basically the norm. I've had similar discussions:


    "We fix this so it works better, then we'll maintain our current customers and have less support calls which means more profit!"


    Of course immediate revenue is more important. You have to GROW and FAST. Slap some new features in that unstable product to sell a few more systems. Sure, customers are only sticking with due to good will earned from the previous product that was reliable, but we can worry about that later. Yes it would only take another company a year to develop a better product, but that hasn't happened yet. We'll worry about that if it happens and you said it's only 6 months to fix our product (of course ignoring that 6 months is with the current feature set, any more features means more and more rework).


    It seems to go either way though. Either you have strong business people running the company (great at creating business and bringing in revenue, but horrid technical decision) or you have great technical people running the business that are poor at selling ("this product is so good it should just sell itself").


    I'm sure there are a few companies out there that get both sides right, but my experience so far as been a scale that tips in either direction. My best guess is it has to do with the fact people can't be good at everything and people tend to want to be surrounded by those that think the same way. Because of this you end up with management that is generally homogeneous and is biased towards the same priorities. It's rare to have a C-level that can admit they don't know everything and will rely on the advice of others that know more about the areas they are weak in. If I could find a company with such a leader I could possibly be coaxed out of contracting. As it stands contracting is a nice buffer from management WTFery. I'm not so vested in the product that I'm sickened and completely disheartened by the destruction of something with great potential AND I get paid a good hourly rate regardless of how many times they change direction (which happens a lot when the CEO is previously from a large corp and discovers this small/medium sized business is so much more maneuverable, "You can change course on a dime! Both figuratively and literally!! WEEEEEEEEEE!"


Log in to reply