Categories
Entrepreneurship Software

How to build a successful app without an in-house development team

In order to build a successful app, you do not necessarily need your own development team. There are numerous app development companies out there that provide outsourcing services for premium rates. However, in order to ensure that you get the most out of the collaboration, it’s important to keep a few things in mind. In this article, we’re going to take a look at how you can outsource your app development needs, and ensure that the entire process is a success.

Your company’s role when outsourcing

Depending on the development company you choose, your role can range from minimal to heavily involved. The decision is ultimately up to you, but if you do choose to be heavily involved you will need an experienced product manager or two in order to be able to steer the project. In Espeo Software we often meet business owners who are willing to learn a project leader role and take over this responsibility. We’re very open to this approach and can easily set up a development model which is suited to such a project management matrix.

However, even if you have no experience at all with software development within your team and you’re not willing to take on this kind of responsibility, you still have an important role to play in your app’s ultimate success.

Download our checklist and learn what are the best questions to ask your potential software provider before you start a cooperation.

To start, you will have to develop the idea behind the app as much as possible, and provide all the relevant documentation to backup your decision making processes. This means taking a look at the market, your competition, your business goals, your marketing strategy post-release, your budget, and even possible future updates and releases. Most of this information can be found in your business plan or business model canvas. It’s also very helpful at this point if you craft a request-for-proposal and share it with prospective developers.

Developing the app idea itself can be a very complex process. In some cases, when you have experience in an industry, you have already identified the pain points of your target customers. In others, you might want to work with a prototype or MVP (minimum viable product) model, in order to test the market, and calibrate the product through iterative improvements.

Outsourcing is also a great learning opportunity and it can help your company develop the framework and methodology for future projects. You can also work with the outsourcing company in order to build your own development team. Some vendors are very keen to cooperate with their clients, and you can position staff members looking to develop project management skills in a way which allows them to overview the development process and gather best practices that you can use within your own company.

Working with a development company that has its own project managers is usually the best option for startups. The project will be handled from start to finish with a high level of professionalism and, as mentioned previously, all you have to do is provide the app idea and its business objectives. The rest will be handled by the dev team, and in some cases the vendor will help you fully flesh out your idea ensuring that the end product will be a perfect market fit.

Time and time again companies have trusted us as a software development provider. Read more about some of our projects and find out why.

In-house vs. Outsourcing: Cost Comparision

How to build a successful app without an in-house development team

When considering whether to develop in-house, or outsource software development, cost plays a big part in the final decision. We’ve already covered the costs of outsourcing in-depth in this article , so we will focus more on the average costs of building an in-house development team.

To start, it’s important to note that app developer positions are notoriously hard to fill. The demand for the skills involved is growing daily. In fact, according to research from Opinion Matters and OutSystems, 63% of survey respondents had anywhere from 11% to 25% of their development team unstaffed. On top of that, research from Deloitte shows that US companies need 52 days on average to fill an open app developer position, with an average cost of $4,000 per hired individual in on-boarding and recruiting costs (creating job postings, running interviews, training, and running background checks).

Now, let’s take a look at the costs and various factors that will come in to play based on the size of your team. The following salary averages have been sourced from Indeed.

Small, startup team (1-4 employees)

Small, startup teams usually consist of a group of friends and acquaintances looking to enter the app development market. These teams may be funded by investors, but in most cases, they are comprised of people willing to invest free time and energy into a project they believe in. The employees involved will have multiple, hybrid roles, where developers will handle design, project management, QA, and other aspects of development. For the most part, this is the lowest cost option, but it is also the riskiest one.

Small, agile team (3-5 employees)

These teams are usually found in mid-size companies that have an in-house development team. They consist of salaried employees, both independent contractors and full-time staff. If you are located in the US or Western Europe you can expect to pay the following in salaries:

  • Developers: $83,937/year
  • Designers: $84,255/year
  • Project managers: $91,681/year
  • Senior developers hired on a part time contract: $47,133/year

Thatbeing said, your in-house development team will run on $307,006/year.

Full development team (5-8 employees)

This is the ideal development team composition for large app releases, where you want to have a very smooth rollout, and you want to be able to routinely release updates for your app. With a team of this size and composition, you can build consumer and enterprise apps, both native and cross-platform. The salaries for developers, designers, project managers, and part time senior developers remain the same, but you will also have to hire:

  • Backend developers: $120,861/year
  • Lead UX designers: $92,331/year
  • Quality assurance engineers on a part time contract: $37,739/year

This type of team will cost you around $557,757/year.

Additional costs

Besides the salaries of your team members, you will also have to pay taxes, and account for healthcare and unemployment insurance. These costs will vary from area to area so it’s important to check with your local government in order to get a full picture of the costs involved.

On top of that, you will also have to take into account a variety of overhead costs. There are hardware requirements such as desktop computers, and mobile devices that will be used for testing. You will also have to foot the bill for a variety of licensed software such as Photoshop, operating systems and others. Finally, your team will need office space, and office supplies.

The costs of outsourcing

As mentioned previously, we have covered this topic in-depth before, but in order to provide a complete picture, we will also try to outline the costs of outsourcing here.

The media cost for developing an app using a third-party developer usually ranges from $10,000-$500,000. However, complex apps developed by certain near-shore companies can cost over $500,000. Many factors will come into play when deciding the cost of an app, including the experience of the agency, their team size, the complexity of the app, the scalability of the backend, and the location of the agency. Some companies will also take into account your client profile. If you are able to provide a project oversight, and you have experience with app development, your costs could be up to 30% lower.

How to build a successful app without an in-house development team

With 14 years on the market, we have gained valuable expertise in various areas. Read more about what we excel at.

Risks

It’s also important to know the risks involved with each option before making a decision. To start, there is a potential risk involved with hiring new tech employees, especially if you do not have tech experience yourself. Junior developers come in all shapes and sizes, and you will need a wide variety of skills and talents from each one of your team members.

The best course of action at this early stage of your team building effort is to bring in someone who has tech experience, and who especially has experience with developing a software product. They will be able to tell which candidates have the right skillset, attitude and experience to ensure that your development efforts have the best chance of success.
Once you’ve hired your team members however, you are still not out of the woods. High turnover is a big risk for tech companies, especially if they are smaller. IT talent is in high demand, and it is not uncommon for companies to come knocking with better offers in an effort to hire one of your team members. If this ends up happening, not only will you have to put the project on hold, or seriously delay it until you find a new team member, you will also have to wait until they are on-boarded as well.

When outsourcing, you also face several risks. However, these risks can be mitigated with proper market research, and by doing thorough background checks on your list of candidates. If you end up making a bad hire, the vendor might:

  • Run out of business.
  • Not deliver a quality product.
  • Run up costs unexpectedly.

Benefits of outsourcing

To sum it all up, let’s take a look at the benefits you can expect when outsourcing your app development process:

  1. You will receive a project estimation based on the scope of your project and you will be able to work with your tech partner in a time and material model where you decide on your priorities.
  2. You will be able to start the development process as soon as the contract is signed.
  3. You will work with a development team that is comprised of members who have a working relationship that spans multiple projects and several years.
  4. You will be able to hold the firm accountable for any delays or mistakes, based on the terms of your contract.
  5. You will have access to a large library of previously developed features and modules that can be added to your app right away, greatly speeding up the development process.
  6. You will work with a team that has extensive experience, and is on top of the latest technological developments.
  7. You will have several options at your disposal when it comes to the service package you choose. You can hire individual team members, you can outsource a part of your project, or you can hire a full team that is supervised by a project manager. You can tailor the service to suit your needs.

See also:

Categories
Entrepreneurship Software

MVP Development for Startups and Mature Enterprises

Developing an app can be a time-consuming, expensive endeavor. As such, it’s important to work with a methodology that will deliver on ROI and business objectives. Many companies however choose the wrong approach. You have numerous startups which have failed because they took an idea, developed it for months, or even years, and never market tested it until launch. The results from taking this approach can range from disappointing to disastrous. To address this, companies have started working with MVPs, or Minimum Viable Products.

How to Develop an MVP

The methodology starts with identifying a problem and then building a bare bones product known as the MVP, in order to test assumptions and customer reactions to it.With each iteration of the MVP, the company gathers actionable data and metrics in order to determine various cause and effect relationships. 

If everything goes as expected, the MVP is developed further by adding new features and functionalities. However, if at a certain point, it becomes clear that the product idea is not viable, the company can pivot at a relatively low cost, and revert to a previous functional step of the development process. For example, if it becomes clear that the current development path will lead to a product that will not be financially viable for the current marketplace, the company can rollback changes easily, or even scrap the project in its entirety. However, the latter option is fairly rare when working with an MVP.

How to Develop an MVP

The process of developing an MVP starts with a planning phase. During this phase, you will want to map out the long-term goals of the product, identify the reasoning behind its development, and the criteria which will indicate whether the product is successful or not.You then need to take a look at your users. This is where you create user personas, identify use cases, and map out the journey each user needs to undertake in order to achieve their end goal with the product. 

Once the conceptual framework is in place, it’s time to start thinking about features. In an MVP, features are ranked according to importance, and the most important features relate to your user map and your end business goals. For example, if you own a chain of coffee shops, and you would like to build an app that reduces the number of time people wait in line for their coffee, you might be looking to implement features that allow customers to pre-order coffee online before they reach the coffee shop.

In this case, you will need several essential features: clients have to be able to pay through the app, they will have to be registered in a database, and they will need to receive a proof-of-payment on their phone, in order to redeem their order when they reach the coffee-shop. At this point, we’ve identified three essential features for your app. In order to build an MVP, we will have to break these features down even further, and perhaps only market test one or two of them, so that we can reduce costs and development time

Let’s say we’ve decided to test the concept: are clients really interested in pre-ordering coffee? The MVP will perhaps allow customers to simply pre-order coffee without paying for it, and the app will log their order into a database. The experiment can be run for a couple of days with a handful of loyal customers, in order to test results. If everything looks good, the mobile payment feature can be added and tested next.

[contact-form-7 id=”13387″ title=”Contact download_8_reasons”]

Features to avoid in an MVP

That said, there are features which are almost universally poorly suited for an MVP. Features that are completely aesthetic in nature, for example, do not have to be added to the MVP, because they provide very little quantifiable value. These features should be added only after the core functionality has been tested. Other features such as social media integration also fall into this category. 

You then have copycat features. Adding features that are similar to more established apps will extend your timeline and budget, but they will not provide new insights into the usefulness of your product. Copycat features have already been tested by the larger, more successful app, and as such, they can be added at a later stage of the product development.

MVP Development for Startups and Mature Enterprises

Finally, you have features which are requested by early users. This may seem a little counter intuitive because one of the main purposes of the MVP is to test the users’ response to a product. However, features requested by early users might not actually be a good fit for your business goals. For example, some users may request social media integration at a very early stage of the product, which would take time and resources to implement, without providing any quantifiable value to the MVP. These requested features should be noted down and kept in mind for later versions of the product.

The Most Common MVP Development Pitfall

The main purpose of the MVP is to provide validated learning. Validated learning is the iterative process which measures the effectiveness of a product in reaching the set business goals. As such, it’s important to keep in mind that any feature added to the MVP has to have a measurable impact across relevant metrics. Some companies will make the mistake of not taking this into account, and they will go on to view the MVP as the most stripped down version of a product, removing essential features in the process. 

To avoid this mistake, always keep the business goal in mind, as this will help you reach a balance between cost-effectiveness, and validated learning. However, balance is the key word here. Some companies will go overboard with the initial features of the MVP, to the tune of the MVP occupying 97% of their backlog which contradicts the whole idea of an MVP. The MVP should have several key features that will be tested, with the rest of the functionality being implemented once the market responds positively to the concept behind your product.

The Benefits of Developing an MVP

So what are the benefits of developing an MVP? The first benefit would be a rapid development process. It usually takes one or two months to have a market ready MVP. You will also need a much smaller budget to develop an MVP since most features will not make it into the product. 

Since the MVP is a lightweight version of a larger final product, the risk for investors is much smaller. With a reduced development timeframe and budget, investors are much more willing to test an idea and see if it is well received by the market. And, once the concept has proven itself within the market, stakeholders and investors will be much more willing to buy in.

Finally, the MVP development process itself builds an audience. At first, the MVP may be used to test market reactions, and see if a product is welcome by users. But once the MVP starts to gain traction, some users will become early adopters, and develop loyalty towards the product. This means that by the time you get to market, not only will your basic assumptions about the user base be validated, you will have a core set of users ready to support the product.

See also:

Categories
Entrepreneurship Software

From Idea to Working Prototype: Startup App Development Guide Initial Stage

A new app is born every minute. Sometimes it is a gaming app, >or a social network, >or a business app developed to meet certain objectives. However, all these apps have one thing in common: the initial development stage. It all starts with an idea, which moves on to a strategy, and eventually it reaches the stage of a prototype, where the idea is fleshed out for the first time. In this article, we’re going to take a look at these first few steps of the app development process.

The idea

Calibrating with the development team

The first step of the app development process involves relaying information regarding your company, business objectives, target market and competition to your development team. This means that you will have to go through an initial calibrating stage, where you will provide the development team with relevant business documentation such as your business plan, pitch deck and business model canvas. A request-for-proposal is also very useful at this stage. We’ve covered this area of the development process in depth in this article.

Strategy

The previously mentioned documentation should cover the competition, but it would be useful to dig a little deeper. There are three main factors that should be taken into account when checking out a competing app: the number of installs, the ratings/reviews, and the history of the company behind the app. Most of this information can be accessed for free at the app store, and on the company website (where you will find case studies, white papers, and announcements on their blog).

Once you’ve found the top competitors within the market, you want to study their apps and see how well they address customer needs. This will help you find new niches and angles of attack, where you can provide more value through your app.


Next, you want to consider monetization. You will sometimes develop internal apps, which are meant to improve business processes such as HR, or they may be meant to mobilize the sales force. In other cases, you might want an e-commerce app, or a client-facing app meant to augment business services and act as a marketing tool. You also have a third kind of app which directly targets a segment of the market and which benefits from direct monetization.

Depending on the type of app that you end up developing, you have several monetization methods at your disposal, including in-app purchases, advertising, premium features, subscriptions, and selling user data.

You then want to take marketing into account. You will have to figure out a marketing strategy, preferably an iterative one that will allow you to increase app adoption, user retention, conversion rates, and other relevant metrics. This could mean adding an on-boarding process, push notifications and a variety of other features.
Finally, at this stage you want to consider the Minimum Viable Product (MVP). The main idea is to determine and understand your app’s key functionalities, and prioritize a list of features that will go into the MVP first.

This article presents a linear approach to executing the strategy. There’s also another way where the whole application scope doesn’t have to be tackled at once. The process is followed only for the functionalities within the scope of the MVP, then the app development starts immediately and further functionalities are iteratively added to the sketches, wireframes and prototype while the MVP may already be monetized.

From Idea to Working Prototype: Startup App Development Guide Initial Stage

Prototyping

Between the idea, and the MVP, you have the prototype. A prototype is a fleshed out version of the app’s UI, meant to test for functionality and user experience issues at a very low cost. Prototypes are perfect for iterative design and development, being less complex than an MVP.

Identify key functionality features

The first step of prototyping is to identify the key features of your app. If you’ve gone through your strategy in the previous development stage, you already have a prioritized list of features written for your MVP. This list will work here as well. Take the top 3-4 features from your list, and consider how they would be accessed and where they’d be in your UI.

Create user personas

User personas are a powerful design and marketing tool, and they are meant to represent the major user groups for your app. Your app can target many different user segments, but it’s important to categorize these segments in a way that translates into UI and functionality decisions.

For example, you’re building a productivity app that targets both 20-something young adults in college, and 40-something soccer moms looking to set a schedule for their children. The key differentiating factor between these two user groups may be the level of technological competence, or it may be the desired functionality features. By understanding your user personas, you are able to make important design decisions early on, where you have very low costs of implementation.

Sketch out the primary screens

Once the conceptual work is out of the way, it’s time to put something on paper (digital or otherwise). This is where the sketch comes in. The sketch is a perfect tool if you want to understand how elements will be positioned on the screen. Sketches are dirt cheap to create, and they can be used to get buy-ins from stakeholders, before moving forward with the app.

Turn the sketches into wireframes

Once the sketches have been approved by the stakeholders, it’s time to start the wireframing process. Wireframing is a low-fidelity representation of the UI, but it still lacks functionality. Some companies will skip the sketches and dive straight into the wireframe. However, fixing a wireframe is slightly more time consuming than fixing a sketch.

Create the prototype

Wireframes can be easily transformed into a prototype by adding basic functionality and interactivity. A prototype will help you calibrate the UI and improve the user journey. The main advantage of taking this route, instead of jumping straight into the MVP is cost saving. Each step of the way allows you to calibrate the fundamental elements of your app for a very low cost, a process which could otherwise be very expensive if complex code and design is added to the app ahead of time.

User testing and recalibrating the prototype

From Idea to Working Prototype: Startup App Development Guide Initial Stage
Apps concept drawn on a notepad placed on a desk

Once the prototype is up and running, it can be shared with stakeholders, users and investors. This is also the point where you can start the initial user testing, and calibrate the prototype to perfection. Based on user feedback, you will be able to go into the MVP with a market tested UI and UX, and start adding core functionality to your app.

Prototyping tools

There are several prototyping tools out there, which allow your team of designers to create prototypes in an expedient manner. In some cases, some of these tools are so accessible that they eliminate the need to use sketches before designing the actual prototype. Here are 5 of the most popular tools today:

Balsamiq

Balsamiq is a tool designed to build wireframes, but it has a feature which allows you to create interactive prototypes that can be used for testing and demos. The main strength of Balsamiq comes from the community, which generates a ton of content that can be used to speed up the design process. You will find assets, templates and other elements online for Android, iOS and BlackBerry.

Justinmind

Justinmind also works with wireframes, and the great thing is that any change you make on the wireframe is reflected on the prototype immediately. This tool also includes simulations for various gestures such as swipe, tap and hold, and others. To top it all off, you have access to a large library of user-generated pre-built widgets to speed up the design process.

Moqups

A free to use tool, Moqups is one of the most accessible items on this list. It has an easy-to-use interface that comes with a lot of pre-built materials such as image placeholders, sliders, and others. You will also have access to numerous templates that come with platform-specific UI elements. The only downside to this tool is that it only produces wireframes, which then have to be transferred to another tool, in order to add functionality.

Proto.io

Proto.io is a prototyping tool designed specifically for mobile applications. This tool allows you to create prototypes without any code, and it has a great feature that allows testers to add feedback as they are using the prototype. It is also very accessible. The entire prototype can be developed from a single screen, where designers add the various elements of the app and determine the interaction between them.

UXPin

UXPin is available for multiple platforms, and a wide range of resolutions. The main advantage of this tool is that it has strong version control, which makes iterative work easy. On top of that, it has useful features such as real-time commenting and editing. UXPin is the tool to use if you want an emphasis on rapid UX development.

Conclusion

In order to ensure maximum cost efficiency, and a perfect market fit, it’s best to have an initial development stage that includes prototyping and an MVP. If the development process starts with a laser focus on the target market and its needs, augmented by iterative development, the resulting app will be much cheaper to develop, and it will be much more effective at achieving business objectives.

Categories
Blockchain Entrepreneurship Public

How blockchain regulation should look

Despite what you might read online, not all blockchain regulation is bad. Regulations are, in general, necessary. They help businesses thrive on markets that suffer from information asymmetry. What’s more, they also make the industry landscape clearer and sanction the government’s approach towards it. Regulations also protect customers’ interests if access to information is limited or if there’s a constraint on competition between market actors. However, blockchain regulation can be done wrong, as we’ve seen in some cases. Let’s raise some questions and try to look for solutions: from green addresses to exemptions.

Thinking cross-nationally

Regulations are usually national. There are certain cross-national regulations, but they happen only to some extent. You don’t want people financing terrorism, for example. However, it can be futile to try and regulate companies that operate through using blockchain technologies only on the national level . That’s because companies can change the jurisdiction of their inc. to avoid unnecessarily harsh blockchain regulation. It would be very beneficial for the whole industry to create cross-national non-profit organizations and self-governing bodies that can address policy blind spots . Their members can range from industry representatives to government representatives. They could be tasked with suggesting and promoting good regulatory practices across the members and jurisdictions they represent.

Educating

As a technology, blockchain can’t be regulated or banned , as it’s only a concept/algorithm and a technical data structure. Entities (especially those non-formalized) operating purely on the blockchain that don’t interact with real-world companies can’t be regulated either. However, regulators should also be involved in education campaigns , spreading awareness of fully decentralized schemes or pointing to risks of suspicious schemes (example here).

Focusing on entities interacting with blockchain

Blockchain regulation should be focused on the entities that interact with blockchain technologies. They operate on the blockchain network, offering their services to other real-world consumers or companies. Regulation on this level shouldn’t be much different from what we have for similar non-blockchain services. This includes any financial operations, insurance, logistics, etc.

Allowing exemptions

As the technology is very innovative and can create positive change across many industries, there should be regulatory exemptions in place. Good examples include blockchain regulations in Switzerland or Gibraltar for small-scale operations. They’re measured, for example, by a maximum value of customers’ assets held by the operation without full license or by the exemption time. In these cases, the regulation is won’t limit innovation before it’s able to prove its positive value.

Self-regulation

Some fully decentralized schemes can and will impose self-regulation practices and extreme transparency . An entire industry built around providing analytical, monitoring and transparency services to existing fully decentralized schemes may emerge . This would increase the customers’ confidence in the schemes. So, regulators should also promote these practices – or companies offering them. Regulators and Central Banks can even go one step further and create national cryptocurrencies with self-regulating capabilities built right into their scheme. Decentralized services built on top of national cryptocurrencies can be considered safer by the end customers. Of course, if the scheme can self-enforce regulation best practices (proper KYC and AML).

Anonymous schemes

It’s possible that national governments and regulators may create their technical interfaces/APIs . For example, for proper tax calculation or for direct sales tax payment. So, those fully decentralized services offering their products to the citizens can become fully compliant with the local regulations even if they lack any real-world manifestation . Schemes like that can increase the customer’s safety. What’s more, they contribute to the view that customers can operate within the law even in the case of fully anonymous schemes . At the very minimum, regulators have to clarify their stance on the sales and VAT taxation applications to transactions conducted with blockchain .

Using green addresses

In some jurisdictions (like China), capital controls, especially the flow of capital abroad, are an important part of regulatory responsibilities. It’s hard to curb Bitcoin transactions as they’re naturally borderless. However, it’s possible to control all the participants that take part in converting fiat money to Bitcoin – and vice versa. There’s also the concept of Green Addresses. These are Bitcoin addresses that belong to a known and trusted financial institution which also manages the users’ bitcoin wallets. Whenever a user wants to make a transaction from a wallet to an external party, they can send it via its Green Address provider. Then, the outgoing transactions will look as if they’re coming from a trusted address of the Green Addresses provider. Regulators can require all transactions into and out of exchanges in a given jurisdiction to go via Green Addresses.

Fixing information asymmetry

The concept of information asymmetry exists in the general economy. For example, in used cars trading. Let’s say the buyer can’t really tell if a car is good or bad. The seller can easily hide some defects, which leads to increased distrust between two parties. Blockchain technologies can help, as they can provide irrefutable provenance proves. Every object can be traced back to its producer and all the previous owners. Additionally, you have trackable quality assessments and can see all the amendments and repairs ordered in the meantime. This information can’t be removed or hidden from the blockchain. Regulators could structure market transactions so that proper provenance collection is required for every newly built product from a certain market. This way, it gradually introduces complete reliability to this market and lowers information asymmetry.

Blockchain regulation catches up

These are only some of the issues that national regulators have to face. Some advancements were impossible to predict when regulators passed resolutions. It’s a difficult game of catching up. And if you feel you need to catch up with what’s currently allowed and what’s not, go for blockchain training.