Software Outsourcing: How To Find The Right Team for Your Product
To build a kickass product, you need a kickass team to work with you. Whether you’re a startup or looking to expand your business, hiring the right technical team is very crucial decision considering that they are going to be the architects of what you’re building. Finding the right people to work with is not easy (think the ever booming headhunting business). It’s a tiresome job to evaluate your technical requirements, expectations, design aspects and then map them against the people whom you’re trying to work with.
Instead of hiring a technical team and keeping them on a payroll, you can very easily look towards outsourcing as a means to get your technical requirements fulfilled. Hiring an outsourced team reduces a lot of your work – but choosing the right one from the hoards of tech shops that have sprung up is another big question.
A simple Google search for the ‘web development companies’ or ‘software development companies’ will give you an idea of how big the tech outsourcing industry actually is – finding the right partner can be a daunting task.
The following points will help you find the right outsourced tech team for your business:
Background
A little bit of research about the background of the company will give you a clearer picture of what they are all about.
Previous projects: Start with previous projects the company has worked on. Judging on the companies they worked with, you might get an idea about their reputation. Also, not being associated with big names doesn’t necessarily make them bad, it’s all about the quality of work they do.
Pro tip: Try and see if any of their projects are live, and see if you can get your hands on it.
Relate: Go through the list of past projects and see if they have anything similar to what you are looking to build. For example, if you are looking to build a chat application for iOS, see if they have made anything along the same lines. Dig deep and see their areas of expertise and analyse if it’s something that interests you.
Pro tip: Relatable projects means that the team has experience in that specific domain, this means faster execution, better understanding of requirements and foreseeable flaws.
Services
This includes what all they have to offer and relate it with what will you need for your project.
Platforms and Technologies: Almost every company offers to build on Android and iOS. Dig deeper if you are looking for something different like BlackBerry, Windows mobile or require for multiple platforms. If you’re looking to build a web application, see which backend technologies they work on. PHP and .NET are technologies which are losing popularity day by day. You need to make sure that your technology stack is future proof.
Pro tip: Look for expertise in Javascript based frameworks (Node, Meteor etc), Ruby on Rails or Python.
Design: This is a very crucial aspect, especially if you’re looking to build a consumer facing product. Implementing design as per the design mockups is something very few frontend developers are good at. Your screens need to work perfectly with every device type and screen size – achieving a near pixel perfect implementation. Look keenly at their designs, try loading in on your phone, resize the browser window to see how well their designs respond. Understand which technologies they use for developing the front end, you don’t want designs which reek of 2005.
Pro tip: ReactJS and AngularJS are really popular and are used by almost all the good looking applications.
Pricing: Pricing is subjective and varies with companies. Usually, the technology companies charge a flat per hour rate. They estimate the time for your project and multiply it with their flat per hour rate. It is absolutely essential to know the standard hourly price and an estimated timeline for your project before you go any further.
Team
Knowing about the team you’ll be working with is only natural. The strength of the team, their expertise and availability – might affect your product somehow.
Size: Size of the team is an important aspect. Growing companies generally mean that they have a lot of incoming projects, which is a good sign. You wouldn’t want to work with someone who is on the brink of shutting shop.
Who they are: A typical team consists of developers, project managers, and a technical lead. Speak to the team you’ll be assigned with before making a decision. You’ll be working a lot with these guys, so make sure you feel confident and comfortable with them.
Availability: See how and at what times is the team going to be available to you. Make sure you have a stable Point of Contact with the outsourcing company you can get in touch with whenever you need to. Check beforehand if the team can be contacted during non-working hours or weekends if required.
Communication & Project Management
Communication is the key to any successful outsourced project. Converse with your expected team members to make sure that both parties are able to fully comprehend whatever is being said. This is becomes a lot more important when you’re outsourcing your project internationally. Make sure there’s no language barrier before you start.
Project management is another area you need to look into. Understand which tools the team is using, which development methodology they follow (Agile, Waterflow etc) and if you’re comfortable with them.
Pro tip: A face to face meeting before starting on the project will be really beneficial!
Getting started: It begins with what you have in mind about the idea and conveying the same. Adequate documentation can be really helpful. Be clear if you already have some design ideas, workflow, images that you’d like on the app.
Status Meetings: This includes how often will you be contacting the team for status reports. It is advised to stay in touch with team regularly and that the progress be documented religiously. If your outsourced team follows Agile – you can expect daily standups and weekly/fortnightly demos.
Project management and communication tools: There are a bunch of tools out there to facilitate project management and communication. Just make sure that you’re comfortable with whatever tools your outsourced technical team is using. If you’re already using certain tools – check if they’d be willing to move to yours.
Project Delivery
Deadline: Every project that the outsourced team handles comes with a deadline, unless you’re hiring them on a T&M basis. That being said, it’s upto you to make sure that every party involved with the project does their part on a timely basis. Very often the projects get delayed and end up in finger pointing – make sure you take necessary steps to ensure this does not happen.
Delays: As the project progresses new hurdles/bugs might creep in. Take all the possible factors into consideration that will delay the completion and come to strategic approach on how to minimise and deal with it. Talk to your vendors and clear out any concerns regarding delays. Every vendor has a different approach to handling delays – be sure to understand them before getting into business with them.
Bugs and Issues: Once the project is completed, be sure to check for any issues and bugs. Ask the vendor how they handle bugs reported after the project is completed and how long will they accept reported issues. If possible, Be sure to spend adequate time testing your product.
Pro tip: Ask your team to write out test cases even before starting the development work. This approach is called Test Driven Development.
Post Delivery
Maintenance: Delivering the project isn’t the end of the road. There is always a possibility for technical discrepancies later, keeping this in mind, know if your team will be able to help in the future or not.
Assistance: Once the website goes live, it’s time to grow and traffic and get leads. will the tech team be able to facilitate with SEO and monetisation for marketing purposes.
Billing: The whole project should essentially be broken down into milestones and partial payments be charged against them. A contract is usually signed beforehand, that lays out all the milestones and costs associated. Be sure to clear out with the vendor partners, what happens in case the timelines are not met.
We hope this makes a lot of things clear, when it comes to outsourcing the development of your technology product. Everything we’ve have mentioned above comes from our own experience of running a technology services company for about 4 years, and delivering over 40 successful projects.
In case you’re looking for hiring an outsourced team for your development, be sure to reach out to us!