Constant Tech issues

I am running a tech startup in the big data field. We have clients and are profitable already and growth is good too. The unfortunate problem is that we have lots of tech issues, crashing every two weeks … and we are generally behind tech development schedule. This is becoming a growth limiting factor and of course it’s not adding to a good reputation if the servers crash every two weeks. The developers are mostly offshore and I can’t sleep as I constantly have to check if things are still running.

My question: is this normal and will go away with time or should I be seriously worried that I might not have enough capable people on the team? Most of the team is around 27 so they might lack maturity in these things.

  • Be worried, and hire some good developers who are local.

    This will get worse, not better. And it will not be cheap to fix.

  • It’s not an age thing, it’s a maturity and location thing. I’m the CTO of a profitable company, and I’m 20. Average age of our tech team is much closer to that of my dad than mine, but we’ve had NO downtime issues over the past 6 months of note. Little hiccups, but because of how we built it it’s mostly self healing. The secret weapon I have is that the entire team is in the same building and working together.

    • We simply started with offshore developers (they all work 100% only for me and not through an HR firm). due to cost reasons. Now I want to move some of them to an office. I hope this helps getting these things under control. However I want to avoid the risk that everything goes bad and we have to give up the office etc.

  • The engineers that built the Apollo 11 were 28 years old on average, and you’re not doing rocket science. So no, the age of your engineers definitely isn’t the issue here.

    You should never — and I repeat never — outsource your core competency. If you’re a tech company you can outsource HR, payroll, sales, customer support, and everything else, except for the tech. It’s like starting a hedge fund where you outsource the investment decisions.

    Your first step is to hire somebody you trust to do an audit on your tech stack so you know where you stand. Perhaps the tech troubles are only superficial, but it’s more likely there is deep technological rot.

      • That is a strong sign that either your people are incapable or delivering or the requirements are too big for the timeframe. Judging by your responses below, there is a chance your people are too scared to tell you if something is wrong.

  • Your problem isn’t outsourcing, your problem is probably large and poorly structured SQL queries (or whatever similar for Big Data these days).

    Long ago I “outsourced” my project to small remote company (ie: across the country) and had problems with system crashing — due to terribly written and obfuscated queries. You could have these problems when “outsourcing” to any outside company (not just offshore). Hell, I has same problems when one in-house developer was outside of his expertise.

    What you need is a good independent expert to diagnose WHY your system is crashing. Since you are in Big Data, I’d suggest starting with Database/DataStore query analysis.

    • Its not only related to the queries. The things that make me angry is that people cosntantly don’t look left or right. Example:

      We have a signup on our website with a password with password rules in place. The developers did not see it necessary to give a meaningful error response like (password does not have a minimum of 8 characters, a number etc.) Instead we show some cryptic error message that something went wrong.

      Another example: If a client cancels we neither get a message and there is a bug that did not set the client as inactive. We falsely billed clients already because of this.

      3rd Example: The app crashes (becomes unresponsive) because a client integrated us wrong and this affected all other clients too. We are build on cloud (so all clients run on the same version / infrastructure).

      I am furious about the issue we are having. Maybe they take it too easy and I should fire some people to set an example ? I would expect people to look a little bit left and right and not behave like robots. I don’t want to babysit every little bit here.

      • Okay, I see more of the problem now (not just queiries). You are suffering from what nearly ALL software development project go through. You are correct, they (developers) should be looking left and right and using better judgement. But that is true with ALL employees in every position — some give a shit, others don’t and short cut.

        What you are describing is the need for Quality Assurance (or software testing). I’m currently us a Ukraine Ruby on Rails developer (I’m on East Coast US) and I run into same frustrations (even when using multiple developers). The password issue is classic (lots of sites suffer from this). Want to see something stupid — go to most any hotel site (like Hilton) and select room for week of Christmas — you’ll get some stupid “ERROR, ROOM not AVAIL” message at top of screen. I’m thinking, geez, this is Hilton, can’t they hire better programmers.

        So what to do? You need someone to do software testing (I do my own, it’s a pain). Maybe you are the best one to “own the product/User experience”. Maybe you can hire someone — really anyone who is NOT a developer can test to make sure your site works in a manner that will satisfy users. Maybe give one of your clients a discount for pointing out flaws. Be creative!

        And constantly send emails back to your developer to say “guys, fix this, fix that” and say “come on at least take SOME time to look at this from the User’s perspective (I bet they complain about same password error when they try to buy something online from other site).

        Then, REWARD those that do look Left & Right. Rewards/incentives always better than punishment — people love recognition.

        Of course, firing the slacker in the bunch is always good idea too. I had team of 20 developer at my last startup and the good ones were always glad to see the slackers go.

        Good luck, this isn’t easy stuff.

        • Also, babysitting is an accurate description — but hey, it’s part of the job — you just have to continue hiring “attention to detail” type people (in all roles) and reward/promote them. Marginalize or fire the ones that require too much baby sitting. It’s a constant process (in any job, at any company).

      • Developer are robots – you tell them to do X, they do X. Asking them to do more, is futile. You need better UX and user design. I have a lot of friends who do this type of work, that’s what they get paid for. Their job is to see the small things like error messages, how should those error messages be presented, how do they go away, what is the user procedure for fixing errors, etc. etc. etc. You need to hire or develop those capabilities so problems like this don’t happen. It’s not really the developers job to say, “Hey, I think we should have a blue and white modal that says error with this copy,” and also make them create the user flow to fix the error. I mean, c’mon, if your leadership team hasn’t figured out how to hire an experiential designer, user test groups, or an architect, then it’s a failure of leadership. Even when I made a tiny app, user error and cancellations were big part of the engineering process. It was mapped out in the UML from day 1. Your problems are bigger than your developers.

      • Another issue you are probably not writing use cases and expecting them to read your mind. The best way to get what you want is to clearly lay out expectations and needs. So If you want password validations to be shows, specify that as being a requirement for acceptance.

  • {"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

    You may also like