Who can create the technical solutions for a startup?

In continuing the series of posts on software solutions for startups started on Nov 20, here I’ll list who would create those solutions.

As a quick summary of what we’ve discussed so far:

  • Startups often don’t have the internal capabilities to create their software applications unique and critical to the startup’s success
  • Those software solutions are often web applications, mobile apps, and desktop applications

Now the question becomes, if the startup can’t create the technical solution themselves, who will do it for them?

Here’s a short list of options. Further below is a short discussion of each.

  • Your brother-in-law’s nephew’s cousin’s neighbor kid who is in highschool and knows something about computers.
  • College computer science major
  • Freelancer or independent contractor
  • Technical employees (programmers, software developers)
  • Custom software shop (large or small)

First of, if some suggests to you that their brother-in-law’s etc etc can help you, run away screaming. Don’t even talk to that person. Or if you don’t want to run away, just smile and don’t say anything. Don’t ever even consider going that route. The kid likely knows a little something but couldn’t write much beyond a simple Hello World app to save his life. Even if he is really good, he has no time…soccer practice, school, homework, XBox games to play…it’ll never get done even if he’s cheaper than dirt.

College comp sci majors? They’ll be much better at creating an application, an a little bit more expensive than dirt. But they’re also really really busy and the application will never get done. They’ll work hot and heavy for 1-2 weeks once you give them some beer money. But you’d be hard pressed to get any end results anywhere close to the schedule promised or needed.

So far, am I being harsh? Yes. But what I’m staying isn’t too far away from the truth. I’ve heard stories from customers that have tried these routes to get solutions done. We have also had to cleanup after sad situations like this. And when I say “cleanup” I really mean “throw it all away and start over”.

When we start talking about employees that are programmers, software developers, now we’re getting close. If you have these people now, or you are funded well enough to hire them your chances of success increase somewhat. But a lot of the responsibility for a good solution still relies on you. You need to know how to hire the best of the best of the best. You need to know how to manage the project to success, or hire someone that will. If you haven’t done this before, please tread carefully. Believe me, hiring developers, project managers, testers, etc is a special skill that only comes with experience and learning…which itself comes from making mistakes (I’m speaking from experience here).

The last group is software companies that create custom software solutions, which are are one. I honestly think they are the best solution out of the options above if you don’t have experience hiring technical people and managing the project. If you can find the right company, they’ll have experience working with startups, they’ll understand how to create solutions for startups. This means that they know how to create solutions incrementally and prove the minimal versions in the marketplace. This approach makes the project initially cheaper, faster to market, and significantly lowers the risk.

Given what I’ve summarized above, it would make sense to go with the smaller custom software shops.

Am I biased on that answer? Hell ya! I think we do a great job executing software projects, including those projects we do for startups. But given that, we’re not always the cheapest solution. Freelancers can be cheaper, but then again, one’s experience and capabilities with hiring and managing a complex software project will impact the potential for the starup’s success.

After you figure out who can create the solution the next question is often how will they pay for the solutions…that’s another topic for another time.

Next is what should be created and what shouldn’t be created. That’s always a really interesting question. The answer has a HUGE impact on the success of the startup.

What technical solutions do startups need?

In a post on November 20 I suggested that there are many startup companies out there that aren’t able to create the technical parts of their new product or service on their own. This is in opposition to the many startups started by technology experts or geeks that can create their own solutions for their startup.

I was referring mostly to startups that need a web application, and mobile app, or some other software or hardware technology solution that is integral to their new product or service offering.

This post will be the first of the series of short posts about startups creating their new product or service with technology involved.

The first task is to briefly define what kind of technical solutions we’re referring to. That’s pretty easy. They can be summarized as follows:

  • Web application
  • Mobile app
  • Desktop application
  • Physical devices

Most often the technical solution startups need or at least think they need is a custom web application or more often a custom mobile application. This application would be the tool with which their customers interface with the startup, consume content, interact with data, and possibly make payments as customers.

These web and mobile solutions can be created as HTML5/CSS3 web applications with Responsive design to provide one solution for both platforms. Sometimes creating the mobile apps as actual applications for each platform (iOS, Android, Windows, Blackberry, etc) are necessary. The choice depends on a number of factors, the discussion of which is worth multiple blog posts…so I can’t get into that here.

There are some startups that would need to have a custom desktop application created. These are often applications with more complex functionality than can be executed on the web, or where the target audience requires or expects the solution to be provided as a desktop computer application.

Lastly, there are startups that not only need some of those solutions, but also need to have physical devices created for their solution. I’ll skip discussing physical devices since that’s not our area of expertise.

We’re in Pittsburgh. Pittsburgh is making a come back in many ways including the economy, a technology education and solutions hub, and a healthy startup community. At Ectobox we have been getting more and more requests from startups of various types to discuss potential solutions to create. It’s almost one startup a week that we talk with about what can be done. It’s definitely an exciting time in Pittsburgh and a great time to be in our line of business.

In the next post I’ll discuss who can create the technical solutions that startups create. There are a lot of options to consider. Til then…

Three Reasons Why Customers Like Great Customer Service

I have found that one of a few big reasons that customers stick with us is our great customer service. I have discovered this through conversations and through surveying customers with Survey Monkey, that they really like and really want great customer service.

For our custom software business that means providing them with:

  1. Quick responses
  2. Solid technical work
  3. Honest feedback

Quick Responses

Provide customers with quick responses so they know a human being is on the case. An autoreply from your case/ticket/bug management system is fine. But be sure to follow-up quickly by a human being. “Quickly” could be in a few minutes or at least in a couple hours. You don’t necessarily need to solve the problem that quickly. Just let them know a human is aware of the issue.

Then you should define the priority of the work, and thereby, the ETA for the modification or fix. (We work on custom software applications so we always thing in terms of new features, modifications, and bugs).

Having company rules or policies which your customers agree to can make this whole process a lot easier and clearer.

Solid Technical Work

Great customer service isn’t great without quality resolutions. If you responded to the customer quickly that you’re on the case, but then deliver a buggy fix that the customer immediately discovers, then their opinion of you just went down a notch.

When you work on the feature, modification, or bug to a close, make sure you’ve done it right. Don’t rush it. Rushing to a fix does no one any good because the quality ALWAYS seriously suffers. No shortcuts. No silver bullets. Take a bit of time to think about how to solve the problem the right way, the do it.

Honest Feedback

Honestly is indeed the best policy. If your customer requested something that you’re not sure about, ask questions to confirm. If they asked for some custom software modification that doesn’t make sense relative to other features they have in the application, mention it. If they didn’t request a small aspect of a feature that you think might be a good idea based on how they normally work, suggest it.

My customers have always appreciated this kind of feedback. We’ve been able to improve upon their requested features, and avoid potential problems.

So, if you’re running a custom software business, or any type of business that provides customer service, make great customer service one of the major pillars of your business, and you’ll do well for yourself.

The #1 Key to Custom Software Project Success

The #1 key to the success of custom software projects, in my humble opinion, is open communication. If the developer and the customer aren’t openly communicating on any number of levels, the project will fail. The only question then is how severe will the failure be.

There are a few areas I think are extremely important for open communication:

  • Customer is completely open about their needs, requirements for the software, etc
  • Customer is completely open about their expectations for the project’s budget and schedule, and other areas of the project.
  • Developer openly communicates about his capability to do the project given his/her/their abilities and exist schedule of commitments
  • Developer openly communicates throughout the project about progress on the software application.

To address each briefly:

Customer open about needs – The customer needs to spend some time on their own working out thoughts on what they need the custom software to do, how it work work for them, what objectives the software will help them attain. The developer cannot understand what to create, and why it needs to be created without getting inside the head of the customer.

Customer open about expectations – The customer should let the developer know when they hope the application needs to be done for their business. And let the developer know the general budget. This will help the developer quickly determine and communicate back whether the customer’s expectations are realistic. If they aren’t, then the two can quickly work to adjust the requirements to fit the schedule and budget, or vice versa.

Developer open about capabilities – Is the developer too busy to realistically take on the project? Does the developer have the experience to create a site with AJAX when they’ve only ever done desktop applications? If the developer can’t do the project for whatever reason, they are doing neither the customer nor themselves any good.

Developer communicates progress – When the developer creates a plan for milestones, or at least status reports and shows evidence of the progress in the project, then trust is built up with the customer. That will make the customer happy. And we all want happy customers.

These items are not in any specific order. Nor are they new ideas. I will admit that they are fairly broad statements.

Regardless, they are areas where the customer and the custom software developer need to talk with each other, be open with each other. If it doesn’t happen one party will misunderstand the other party and it’ll all go south.

I know this from experience watching other projects, and from painful mistakes I’ve made. But life is much better now that I don’t make those mistakes anymore. We also have so much more business now because customers trust us and refer us to other potential customers. So, open communication makes everyone happy.

When is custom software the next step? The answer

In the last post I was talking about when custom software might be the next step in the progression of using software to track and report on data about one’s business. To continue…

That next level is a software application which uses a database to store the data behind the scenes. That software will display forms to enter data, have buttons to run automated processes, have reports to pull data together from various places, all enabling you to enter, edit, and view reports on your data pretty easily…especially compared to the Excel scenario.

The software solution can come in two basic forms:

  1. Off the shelf (OTS) software
  2. Custom software

Off the shelf software can solve the issues of many businesses. QuickBooks is a great example of this. It has a place to work with much of the data discussed above.

But if your business is a little bit different than what QuickBooks allows you to handle you either suffer through those differences by doing some things in Excel again along with QuickBooks (which is going back to a cumbersome scenario), or you have a custom software application written.

I’d venture to guess that a fair many companies find that QuickBooks or some other off the shelf application doesn’t work exactly the way they want. They’ll often consider custom software. Custom software is often more expensive than off the shelf software, but it can also save users lot’s of time, prevent many mistakes, provide more useful reports on data than otherwise possible, and thereby enable the business owners to save and make a lot more money than otherwise possible.

So if you find yourself with too many Excel files, you might want to give serious consideration to an off the shelf solution, or creating a custom software solution…which is, of course, what we do day-in and day-out.

Can really large, diverse projects succeed?

Yes, large, extremely diverse projects can succeed.

Assuming this post is true, this project sounds amazing. I’d love to know more about it. Check it out:

Regardless of who you would prefer to have in the Oval Office, this project sounds like it was an amazing success.

This sentence sums it up for me: “100% cloud-based, deeply polyglot, poly-framework, poly-DB, and, perhaps most importantly, unbelievably agile and time- and resource-constrained”

Wow! It’s always good to hear about great IT projects coming together and succeeding.