October 19, 2021No Comments

Being a Virtual CTO is More Than Just Giving Advice: An Inside Peek

For the second year in a row, the COVID-19 pandemic is forcing companies to adopt a digital approach to their day-to-day running. According to Gartner, 58% of business leaders have been investing big in emerging technology in 2021, and are planning to do so further on. The key initiative behind the increased spendings is to accelerate business growth by means of innovation. 

The strategic importance of innovation for modern-day companies is hardly disputable. The business environment is evolving and all legacy methods of operation are being upgraded. Essentially, it sounds like a good idea that will pay off over time. It really is, but there’s also a flip side to this. It’s called business capacity.

Can you afford to spend an average of 10-15% of your total revenue on technology that may fail to drive your business forward?

More often than not, the answer will be ‘No’.

To implement new tech a company needs a wealth of talent, a scalable infrastructure in place, and a strategy for continuous growth. Otherwise, those spendings will be vain, while technologies will bring no expected transformation. 

This is why your business needs a Chief Technology Officer. You can opt for an in-house expert or a virtual CTO.

What is a virtual CTO? [Definition]

Either virtual or on-site, a Chief Technology Officer (CTO) is a C-level executive, who oversees the company’s digital infrastructure and makes sure that short- and long-term goals of the business are achieved by utilizing innovative tech. A CTO stays on top of the emerging trends, evaluates them in the context of business needs, maps out the tech strategy, and decides on the procedures necessary for delivering high-quality products or services.

What do fellow CTOs say?

“The job of a CTO is to work with a CEO and other business leaders and ensure that you’re implementing a technology vision that supports the strategy of the business.”

Peter Shankar, a CTO at Equity Multiple

Outsourced CTO vs In-house CTO

Over the recent turbulent years, the business world has accustomed to working remotely. The transition to all-digital space has blurred the lines between local and offshore experts. Companies now have access to tech talent anywhere in the world at a low operational cost. 

You may conclude that it speaks in favor of virtual CTO services, but there are certain nuances that you have to bear in mind before committing to outsourcing.

Internal CTO: Pros & Cons

CTO as a Service: Pros & Cons

Related Article: Everything you need to know about CTO-as-a-Service

The varying role of a VCTO

The responsibilities of an on-demand CTO are evolving along with the environment that companies are now operating in. They become more cross-functional and strategy-oriented. Providing CTO services no longer means consulting on tech gaps or managing the IT infrastructure. It’s about helping to build a data-driven business.
The modern role of a CTO is multi-faceted, so they perform functions that are seemingly inherent to other roles. There’s often an overlap of the duties performed by a CIO and CTO, as well as a VP of Engineering and CTO.

What do fellow CTOs say?

“[The role of a CTO] is dynamic… You’re wearing a lot of different hats. You really can’t confine yourself to one way of thinking… You’re immersing yourself in so many different verticals.”

Peter Shankar, a CTO at Equity Multiple

A CTO-as-a-service case in point

Let’s conduct a short opinion poll. 

Imagine that there’s a client running an online store. The client aims at recording the 20x increase in the number of sold goods. Can a CTO help achieve this ambitious goal?

  1. YES
  2. NO

In fact, the right answer is ‘Yes’. And that’s exactly what we are working on now.

At the onboarding stage, we conducted a series of interviews with the client to get their business vision and end goals. Those goals were achievable through automating part of manual processes like adding goods to the platform.  

The next step was to actually try and find the solution that would fit this exact business and its operating model. So, we plunged into experimenting. Using a lean approach, the tech team worked out a concept for further validation. We outlined the specifics for the required automation algorithm and proceeded to its development. 

Upon deploying this algorithm, we’ve managed to triple the system’s capacity. Technically, we could improve it more, but in the long term, this would not be enough. The solution alone would not be able to bring us to the mark of 20x. To reach the desired goal we have to dive into the business processes and transform them too, using the trial-and-error method.

Is this case a success? Yes, for sure. We created the appropriate automation tool and its implementation results pointed us towards other bottlenecks that we need to resolve. Our cooperation with the client is in progress. We are now devising a strategic roadmap that may help us bring more transformations to internal processes and eventually, drive the client’s business growth.

Key takeaway

The job of a CTO is to deal with complex business problems that do not have a straightforward solution.

A CTO does not only give advice on the issue that a company faces. A CTO dives into this issue and maps out the appropriate ways of solving it. More so, these new ways must correlate with the existing work processes and fall within the company’s vision.

How to hire a virtual CTO service?

CTO for hire

By this point, you might have decided that your business needs a CTO’s virtual assistance. But there’s a catch. You shouldn’t go for ANY provider. 

Whether or not your choice is going to be a success depends on many factors, and you, as a business owner, are capable of minimizing the risk of failure. 

You should have a clear vision of where your business is now and where you want it to be over time; as well as understand which exact role you are going to assign to a CTO on demand. The CTO’s responsibilities transform in accordance with the stage your business is at.

Set the end goals

Do you want to build an MVP? Are you trying to get the most out of your tech team and improve the internal processes? Are you looking for ways to meet customers’ current and future demands?

Know where you want to focus the efforts of a CTO and outline OKR.

Define requirements for the role

You need to decide whether a CTO should be more of a techie or a strategist. Based on the chosen direction, you may or may not require a candidate to have coding skills, QA & testing experience, engineering mindset, etc.

Ideally, you want to find someone who is technically relevant, and also speaks the language of business. 

CTOs are transformational leaders and therefore, should approach business growth both technically and strategically. We’ve expanded on this in our interview with Peter Shankar, so make sure to check it for lots of insights.

Ask your contacts for advice

Don’t underestimate the power that word of mouth has in hiring C-suite executives. 

Talk to business owners that have a CTO on their team or have collaborated with a CTO service provider recently. Also, utilize online networking platforms like LinkedIn and visit tech events or meetups.

Ask Google

Surf the net for the list of outsourcing companies that provide development and consulting services. As a rule, they also showcase a portfolio of completed projects. Through case studies, you can learn about CTO solutions provided and decide whether it is something you are looking for or not.

Make sure to also check business rating platforms like Clutch. There, you will most likely find reviews and feedback of the provider’s real customers.  

Or… Skip the above and contact CXDojo

CXDojo has been in the industry since 2014. So, we had enough time to handpick the right talent and learn to deliver the expected results together. Our tech leaders are there to pick up your project at any stage, be it a pure idea or a working product that needs improvement. 

Let’s have a chat and find the exclusive solution that will fully support your business goals! Shall we?

September 10, 2021No Comments

5 Powerful Ways to Improve User Engagement Strategy

In this blog post, find out what user experience strategies can help you improve the user engagement of your product.

Let's be honest, as a brand, you expect a lot from your users. You want them to click, swipe, tap, fill, buy, etc. In other words, you want them to engage with your product. But before we dive into "how," let's first define "what." 

What is user engagement? 

User engagement refers to how people interact with your product. The competition in the market is high, and many SaaS products struggle to win the market share, acquire new customers, and keep existing customers happy and loyal. To achieve it, the product needs to be deeply engaged. 

User engagement strategies have a significant impact on digital products as well. Nir Eyal, the author of the book Hooked – How to build habit-forming products, created the Hooked Model to show how successful platforms succeeded in making their product a part of our daily lives. 

user experience

Users will only continue to use and pay for your product as long as they find it valuable.

The right product engagement strategies can increase the number of active users and reduced churn rates. 

So how do you make people want to use your product, like it, and share it with others? This article won’t give a silver bullet that will make you the number one app in your niche and provide a constantly growing base of new users.

We cover in this blog post strategies that (if done correctly) will help you create an engaging product and make people love your product. 

5 Strategies to Enhance User Engagement 

These tips can help you distinguish your brand from competitors and improve user engagement. Let's get into it!

Microinteractions

A microinteraction is a single task-based interaction that you have with an interface. You experience dozens of them throughout the day: when you like someone’s post on Instagram, swipe photos, snooze the alarm on your phone, and so on. 

Microinteractions are tiny animations and visual responses users see when they perform specific actions. 

For instance, with the help of microinteraction, you can reward your users. 

user engagement microinteractions reward users

Like in the example above, when the user clicks “Complete Order,” a motorcyclist briefly appears before the app shows the success state - “Order Placed.” It makes users feel like they quickly ordered some goods. Users do appreciate such essential details. 

Just to make it clear, microinteractions shouldn’t distract users from the main workflow. They are just here to increase engagement and give a little bit of extra delight. 

Microinteractions enhance the UX and make the product easier to use. 

According to Nielsen Norman Group, "one of the greatest joys of using technology comes through user empowerment and engagement. An enjoyable experience means more than just usability — it needs to be engaging, and that's where microinteractions can play a macro role, by positively contributing to the look-and-feel of a product or service". 

Think about the most boring thing we all do on the Internet. I guess it's downloading. You just have to wait, and wait, and wait… But waiting can be fun. Take a look.

Your product features bring users to your product. But details are what make them stay and eventually love your brand. 

Gamification

Gamification is not about creating games and distracting users from the content. When used correctly, gamification increases product engagement, retention and makes the user experience more enjoyable. 

According to Mordor Intelligence, the global gamification market was valued at USD 10.19 million in 2020 and is expected to reach USD 38.42 million by 2026 and grow at a CAGR of 25.10% over the forecast period (2021 - 2026). 

For our client, a lifestyle application that can help people track mood and find out what personal factors are associated with greater happiness, we applied gamification elements to feel more motivated to enter their data. 

customer engagement gamification

Users are awarded “motivational badges” on the 1st, 3rd, 7th, 14th, and 30th successive days of adding the information into the app regarding their mental state and factors that make them feel happy.

Thus, the user understood that it was necessary to fill in the data for several days in a row to receive the award.

Gamification is all about applying game-like mechanisms to non-game environments. It gives a sense of goal, progress, and motivation by achieving some points, winning badges.

For instance, Starbucks has been using a gamified rewards program for years. 

app engagement

They leveraged the concept of gamification to improve Starbucks ’ experience and, in turn, drive sales as well. Customers register for “My Reward” using the app. Each time a customer interacted with the app, they gained some “stars” — representative of points in the Starbucks ecosystem. 

Microcopy

When developing an app or a web platform, businesses usually focus on design and technology, seeking to make it impeccable. But quite often, when the users download the app, they abandon it after the first try, leaving business owners and developers confused. Despite that, the app can be technically perfect, and the business idea is one of a lot, the user engagement is low. Why? The answer is words. Words that are more powerful than an atom bomb. Those small words on users’ interfaces matter. 

High-quality microcopy can’t be overlooked as a way to boost user engagement. 

Microcopy is the small, informative text on forms, pop-ups, buttons, search prompts, tips, etc. They inform and assist people as they are using a product.

The microcopy used throughout your digital product strategy – form descriptions, CTA buttons, user onboarding – can explain technical details, encourage users toward completing a specific action and engage with them with your brand.

Let’s take a look at Mailchimp. Their friendly and personalized microcopy captures attention and makes it easy to enjoy their platform. 

user engagement strategy

To ensure that your product microcopy is effective, follow these tips:

  • Make it clear and concise
  • Follow your brand’s tone of voice
  • Make your microcopy feels like a part of the design
  • Use words to build empathy

User Onboarding

Don’t underestimate the user onboarding process. It has a powerful effect on the entire customer experience and journey. Onboarding is the first experience people have when they start using your product. Think of user onboarding as a hook to make users want to stay with your brand. 

At this stage, your goal is to make them find the crucial value of your product as soon as possible and make it easier for them to interact with it. 

Once your users get into your app, make sure to greet them on the welcome screen. For example, Canva, a graphics design platform, asks its users what they want from the app. This information can be used to adapt what templates they show to each particular user from now on.

usability vs user experience

Duolingo, a language-learning app, has a user onboarding experience that begins gradual engagement. They postpone registration for as long as possible. First of all, they ask users to choose their learning goals. Then a progress bar helps set a student’s expectations of effort to complete a lesson. This is a great example of a value before registration approach. By allowing their users to engage with the app gradually, the current registration feels like a quick step. 

engagement with customers

For our client, an app that helps find kid-friendly restaurants while traveling, we wanted to present the app's benefits before asking users to register. 

As part of our project, when a person downloads the app, they first get to try the app's basic functionality. In our case, the application shows one kid-friendly restaurant in the neighborhood. Instead of forcing users to create a new account straight away, we let them try the app and see its value. Such an approach ensures that users get to know your app and what problem it will solve.

Read more about the project: How To Increase User Engagement: A Three-Step Structure

engagement app wireframe

Engaging yet straightforward onboarding is your way of offering customers a warm welcome and the first step to making them want to return to your brand again and again. 

Mobile-first design 

By 2025, almost 73% of internet users will access the web via their smartphones.  So if you’re not designing for mobile-first, you are in trouble. 

Designing your digital products for mobile devices first helps you ensure that your users’ experience is seamless on any device. Here are a few tips for making your website mobile-friendly:

  • Use a responsive design that adapts to all screen sizes. 
  • Choose fonts that are easily readable on a mobile screen. 
  • Compress file sizes and images so that your site can load quickly on mobile devices. 
  • Simplify navigation. 
  • Avoid pop-ups. 

FYI, Google’s algorithm loves mobile-friendly websites: 

“Getting good, relevant answers when you search shouldn’t depend on what device you’re using. You should get the best answer possible, whether you’re on a phone, desktop, or tablet. […] We started using mobile-friendliness as a ranking signal on mobile searches. […]”

That means by providing a good user experience on mobile, you increase your chances of higher rankings and conversions.

Keep the user in mind

In the end, the most important thing to remember when is that you're doing it for your user—and only your user.
Every improvement you make—whether you're optimizing your onboarding or microcopy, there's no sense in it if it doesn't add value to your user experience.


If you'd like to know how to make your product more enjoyable, valuable, and make customers want to return to it again, let us know, and we will figure out how to make your user experience stand out from the crowd.

August 21, 2021No Comments

Everything you need to know about CTO-as-a-Service

In this article, read what CTO-as-a-Service is and how technology consulting can shape your company's technology vision and improve business performance.

You’re a leader in a small to mid-sized company, and you have a great idea for an app. However, you have no idea how to implement it. Or maybe you need someone to help you ensure that the business strategy you’ve developed is properly supported with the right software. At some point, you decide to hire a Chief Technology Officer (CTO) who will take on all the responsibilities related to product architecture, technology stack, and product tech vision and roadmap. But you’re a growing company that’s not ready for a full-time CTO. This is where a CTO-as-a-Service and technology consulting come in handy. 

everything your need to know about CTO-as-a-Service

When do you need a Virtual CTO?

So here are cases when a virtual CTO can be helpful for your business if you:

  • need to translate your idea into a viable product
  • need a senior tech specialist who will help your business stand out from the competitors
  • want to audit your app, website, platform, system, or architecture
  • are not sure what technology stack will be most suitable for your business
  • want to update current organizational and technical tools
  • need senior guidance to support, manage, and hire tech talents for your project
  • need to create a project technology roadmap but can’t afford a full-time CTO at the moment
  • are ready to scale and need a temporary CTO to help you make the right decisions
  • pitch your product to investors and don’t want to screw up

If you agree at least with one statement, it’s time to consider virtual CTO as an option for your business. 

But first, let’s clarify what we are talking about here. Just like a CTO, a CTO-as-a-Service or a virtual CTO provides go-to technology consulting services to ensure that company technology decisions align with business goals. The only thing is that you don’t pay a full-time salary.

What does the external CTO do for your firm? 

According to Gartner, the CTO has overall responsibility for managing the physical and personnel technology infrastructure, including deployment, integration, systems management, and the development of technical operations personnel. 

More recently, however, the role is moving beyond infrastructure management and shifting focus to driving technology innovation and leading digital product development. 

Just like a CTO, an on-demand CTO acts as the organization’s technologist, responsible for developing product technology vision and roadmap.

McKinsey&Company distinguishes four types of CTOs:

types of CTO
Source: McKinsey&Company

Which style will be the best fit for your company depends on your industry and business domain. Here’s an example:

“Influencers” and “Enablers” can become a perfect match for low-tech industries, where CTOs have a lower level of control over technology agendas. 

By contrast, “Challengers” and “Owners” are a great choice for more technology-intensive companies with multiple business units, each with its vital R&D operations. 

But no matter which style will make the most sense for your company, the main requirements are the same for everyone: the CTO, whether in-house or remote, should shape technology vision, ensure that the technological resources satisfy the company’s short and long-term needs, keep an eye on the trends and turn opportunities into strategies.

Related video: Why do you need a CTO?

When Should You Hire a CTO on-demand for Your Business?

Let's take a look at several cases when virtual CTO can benefit your project: 

when should you hire a CTO for your business

You have a product idea and want to make it viable.

In this case, a virtual CTO can assist you with:

  • Competitors' analysis
  • Architecture design and development
  • Choosing the right technology stack and set of tools
  • Feature prioritization
  • Suggesting the most cost-effective way for your business.

You need an experienced technologist with business acumen.

The steps to be taken by your emote CTO include:

  • Selecting technologies according to business objectives
  • Auditing current technology stack and suggest improvements
  • Dealing with tech issues that your team can't manage or have no resources to solve.

Your business is scaling, and you need CTO to help create a scaling strategy.

The CTO-as-a-Service can help you with:

  • Cloud optimization strategy
  • Analysis of the current situation and suggest the most optimal approach
  • Creating an effective plan to scale up

You are going to pitch your product and need a CTO to help to convince investors.

To successfully pitch your idea to investors, the CTO will:

  • Answer investors' questions
  • Help to get prepared for the pitch deck
  • Describe the product's value proposition
  • Ensure that everything is smooth from a technology perspective

Your business is growing, and you need a CTO to help recruit the best people.

In this case, the virtual CTO helps the human resources department to recruit specialists. Her responsibilities include:

  • Evaluate candidates and conduct technical interviews.
  • Assemble a team so that they have the necessary soft and hard skills.

Related Article: Being a Virtual CTO is More Than Just Giving Advice: An Inside Peek

Benefits of hiring a remote CTO

Here are some advantages of hiring a virtual CTO:

benefits of hiring CTO-as-a-Service

The most apparent reason is cost-effectiveness. You can hire from any country where the salaries are lower. In addition, you may not need to hire a CTO full-time and pay monthly. You can employ a project-based CTO or a specialist who will provide technology consulting. 

To compare, here is the average CTO salary/year in different countries. As you can see, if you are a startup, hiring a full-time CTO can be a bit steep. 

the CTO average salary

You get access to a bigger pool of talents. Speaking of technology consultancy, usually, you don't engage with just one individual or a jack of all trades technologist. You get access to a senior technology team, including CTO and software engineers who use their collective skills to find solutions to problems like yours. 

You get a professional who can work independently. First of all, the virtual CTO shouldn't undergo any training. The only thing required is a series of meetings to dive deeper into your business needs. 

With a CTO-as-a-Service, you can stay ahead of the competition by providing a more significant customer value. It can be achieved due to the CTO's vast experience and deeper understanding of UI/UX design, efficient coding techniques, and architecture. 

How to choose an external CTO?

So, how can you effectively augment your team with a third-party CTO? You have three options:

how to choose an external cto?

Tech Consultant 

In this case, the CTO will audit your product and consult you on the most challenging questions regarding technology. Note that tech consultants work on multiple projects and won’t be dedicated exclusively to your project. 

Tech Lead

This is an option if you are looking for a part-time CTO who will create technical requirements for your project, provide ongoing consulting, and solve your current tech issues. 

Full-time CTO-as-a-Service

If you consider a long-term partnership, you can hire a full-time CTO starting from one month and more. In this case, the CTO will be wholly immersed in your project and help you make the right strategic decision aligned with technical and business requirements. In addition, this CTO will also help you conduct tech interviews with potential candidates to assemble the right team. 

As you see, the CTO-as-a-Service is a relatively flexible solution, whether you have a small to mid-sized business. It would help if you chose the interaction model, which matches your request. 

CTO-as-a-Service for Online Store - our experience

Now let’s take a look at how this service works in practice. Our client needed to automate manual processes, including:

  • adding and creating new product items to the online store
  • adding the Ukrainian language to the website following the new legislation (thus transfer data);
  • increasing website traffic and conversion rate by adding more product items to the online store.

The founders hired CTO-as-a-Service from CXDojo to consult the team. Having analyzed the project scope, our team provided the following solutions:

  • We created high-level project requirements.
  • Our CTO participated in the recruitment process and conducted interviews with potential vendors.
  • We developed a strategic technology roadmap aligned with our business goals with the project’s key objectives, important milestones, main deliverables, dependencies, and possible risks.
  • Our CTO constantly participates in strategic planning meetings.

We helped the client to automate the process of adding new items to their online store. As a result, the number of new products on the site began to grow faster.

So, summing up, the CTO-as-a-Service can work as an extension to your company and offer access to a pool of C-level technology experts without the expense of full-time IT executives. 

If you’d like to learn more about the service and get a free consultation, drop us a line, and we’ll get back to you ASAP 🚀

August 9, 2021No Comments

PoC, Prototype, or MVP: How to achieve product-market fit?

This blog post will explain the difference between PoC, prototype, and MVP and how to test the assumptions with the minimum set of features. We'll go through each approach in detail and show how the process looks like in practice.

When you haven't proceeded with the product development process yet, you are at an ideal stage. It's a stage where you have time to check the viability of your idea and adjust it based on how the audience reacts. 

You need to ensure that your future product will solve your end-users current problems. It's called a product-market fit.

So, how to grow from an idea stage to a product that people appreciate and love to use?

The road to achieving a product-market fit starts with understanding PoC, prototype, and MVP. These three approaches are completely different, and their purpose is to help you validate your future product market value. 

This blog post will explain the difference between PoC, prototype, and MVP and how to test the assumptions with the minimum set of features. We'll go through each approach in detail and show how the process looks like in practice.

POC vs. PROTOTYPE vs. MVP

Ok, so you have a product idea. It means that you have already done half of the work. Your next steps follow this order: PoC -> Prototype -> MVP. However, if the analog of such a product already exists on the market, you can skip PoC. Now let’s take a closer look at each step:

POC - IS YOUR PRODUCT TECHNICALLY FEASIBLE?

PoC stands for Proof of Concept, an approach to identify whether the product is technically feasible. At this stage, your purpose is to answer the questions: “Can we build it?” and “Should we build it?”

For instance, we helped one of our clients develop an app that is a directory of all healthy food restaurants and helps travelers access a list of organic restaurants wherever they are. 

When the client came to us, no similar apps were being used, so she needed to understand if it was technically viable to build what she wanted and how people would use this app. So we needed to start from PoC development. 

It’s worth mentioning that the client had already conducted market research and concluded that many people were facing challenges finding healthy and organic restaurants when traveling. 

It was important to understand how we will collect information about restaurants, categorize them, and test our results at this stage. We spent two weeks processing the existing directories with restaurants and compiling the initial list of organic restaurants. 

As an experiment, we took only one location - the Bay Area and got a list of restaurants there. It allowed us to automate our approach to data collecting, structure it, and calculate the so-called restaurant organic score. The first outcome was the database of restaurants that needed to be processed. 

DIGITAL PROTOTYPING - HOW WILL YOUR PRODUCT LOOK?

Once you ensure that your idea resonates with your potential customers, you can proceed with prototype development. Prototyping is a design tool. It’s an early version of your product that allows you to test hypotheses and engage users with your new web or mobile app. What’s more, app prototyping helps you better understand your product’s potential impact on the market, gather early feedback, and validate requirements. 

In other words, a prototype is a bridge between your idea that started on the napkin and the future product. Apart from testing your hypotheses with a focus group, the prototype is a low-cost and quick way to gain insights to shape future iterations and digital product strategy

At CXDojo, we build clickable digital prototypes, using HTML/CSS or JavaScript as a tool, and Sketch, Figma, and Adobe XD.  

We built a prototype to simulate actions for our client, a mobile app that finds healthy restaurants when traveling. To clearly show the purpose of each feature and screen, we developed an interactive visual prototype without the backend. This prototype gave our client and a focus group the general look and flow of the app. It also helped us learn in real-time how people interacted with a product and which features were used more often. 

MVP - WHAT USERS THINK OF YOUR PRODUCT?

Going back to our example with a healthy restaurant app, what would be the minimum set of features to allow users to enjoy this service? 

In this case, our MVP was a preview of the final product. It had the on-screen look and feel of a full-fledged mobile app but had just two functions available: creating a personal account and finding the nearest restaurant on the map. In other words, the MVP included the essential features of the final app for testing.

Features such as using filters, reading detailed restaurant descriptions and menus, adding reviews are beyond a standard definition of “minimum.” Our purpose was to validate the appeal of the final product and collect more feedback from users. 

From an economic point of view, every new feature added to the scope of the MVP means higher costs and more time spent in development. Remember that MVP is an early version of a product with a minimum set of features. 

Here are a few things you should know before starting to work on your Minimum Viable Product:

  • An MVP isn’t a prototype;
  • It’s not a full version of the product; 
  • While a prototype is a graphic representation of your product, an MVP is a working piece of software; 
  • MVP allows you to test your product viability without breaking the bank and within the shortest possible time;
  • Your MVP should include core and most vital features to engage users. 

The “average” MVP development at CXDojo includes:

  • A dedicated team of up to 4 members, including a UI/UX designer, developers, and product owner, helps organize the process and maintain focus.
  • Product discovery workshops to gather all information regarding the client, product, and target audience.
  • 2-3 months before the final version of MVP hits the market.
  • Constant communication with the client and status updates. 
  • A working piece of code for each sprint.

Learn more about how to go from the idea to MVP development and get the first investment from our episode of Product Drama Podcast.

HOW TO DECIDE WHEN YOU NEED PROTOTYPE OR AN MVP?

Imagine building a house without referring to a layout design. It would be pretty challenging, right? Diving into the development process without defining the requirements is just as tricky. A PoC, prototype, and an MVP are three concepts that often can be confused. But let’s make it clear:

PoC is the first thing you need to think of before building anything. This approach aims to check the technical feasibility of your idea and make sure that your design concept is unique. 

It would help if you had a prototype to see how the first version of your product will look like. Consider a prototype as a way to visualize the user experience of the MVP.

On the other hand, MVP is a basic version of the product. You can launch it with a minimal set of features and analyze how the market will respond to the relevance of your solution. 

WRAPPING UP

To increase your chances of success and avoid building the complete product first. You’ll need to include the prototype and MVP into your product development roadmap. 

Both prototypes and MVPs can be used to reduce risk, costs, and even future technical debt. So let’s recap:

  • If you need to test the product concept and have limited resources and budget, go with a prototype.
  • If you want to gather measurable user feedback and test features’ performance, and see the first users’ reactions, then build an MVP.
  • And if you’re pushing a new product idea, you’ll need to consider the PoC as well.

When working on a proposal, we always consider the client’s needs, budget, and business goals. If you’re not sure where to start, how to collect customer feedback, and create a functional MVP with a limited budget, feel free to contact us

Want to learn more about the process of developing an MVP in practice and see the results, read our case study.

July 15, 2021No Comments

How Unit Tests can improve your product development?

This blog post read about unit tests, components of the testing pyramid, and how test-driven development saves time and costs. 

Has your development team ever told you they won’t write unit tests as it takes too much time? Or you found yourself in a situation where the test coverage of the code was lower because software developers wanted to make everything cheaper and faster? 

Undoubtedly, the testing unit is time-consuming, and it takes more time than writing the code without unit testing. 

In the rush of sprints and deadlines, unit testing is often skipped. As a result, you risk bugs in the code and defects that can negatively affect your business goals. But test-driven development can help you avoid the headache, save lots of time and money in the long run. 

But first of all, let’s answer an existential question: why do we need testing?

Actually, for several reasons:

  • To ensure that the product we develop meets our client’s requirements and expected outcomes.
  • Check that we hadn’t broken anything in the system while introducing changes to the codebase.

When the software becomes more complex, identifying bugs can be more difficult, time-consuming, and boring. So, to make fewer mistakes and accelerate the entire development process, we use automated testing, where both developers and QA engineers write tests.

As you’ve already guessed, unit testing is part of the automation process. 

This blog post will show how unit testing can benefit your business and share the insights gained in 5+ years of software development testing. But before it, watch our 10 minutes video.

WHAT IS UNIT TESTING?

As the name suggests, unit testing revolves around the concept of “unit,” which means a small and isolated part. Unit testing is one of the many different types of automated testing. There’s no formal definition of “unit testing” as such. Still, Wikipedia defines it as “a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures—are tested to determine whether they are fit for use.” 

In other words, unit testing is a method when the smallest part of an application is being verified independently from other parts. 

Unit testing doesn’t come cheap. However, an excellent test realization will pay off in detecting and fixing bugs quickly and delivering higher product quality. 

By and large, what’s important to remember about unit testing, is that it takes some time but, at the same time, saves time on testing during the development process. 

So when does your project require unit testing?

  • You have complex features.
  • Your project will scale and grow over time.
  • You want to predict your project’s time to market.
  • You don’t want to spend a lot of costs on fixing bugs.

The more of these points match your project, the more you need unit testing. 

HOW UNIT TESTING SAVES TIME & COSTS

Given that software developers write unit tests themselves, it’s faster to create and easier to maintain them. You get a return on your investment each time developers compile their code. 

Test-driven development encourages developers to create unit tests before they start writing the code. It allows you to automatically check the code for defects, thus preventing bugs instead of fixing them. 

In other words, with the help of unit testing, you can find errors at the unit level earlier on, so the cost of fixing them will be much lower. 

A case study involving software engineers teams from Microsoft and IBM concluded that “teams experienced a 15-35% increase in initial development time” when using the TDD technique. They also found a quality improvement, and in the long run, TDD saves the time that would have been required to fix problems.

Boby George and Laurie Williams, both working in the Department of Computer Science at North Carolina State University, ran an experiment where 24 programmers were split into two groups: TDD and the linear approach. As a result, “92% of developers believed that TDD yields higher quality code, 79% thought that TDD promotes simpler design and 71% thought the approach was noticeably effective”.

These statistics give a strong indication that test-driven development leads to higher quality code and simpler design.

Further in this article, we’ll describe more ways your project can benefit from unit testing. 

HOW TO WRITE GOOD UNIT TESTS?

But for now, let’s focus on the anatomy of a unit test. A suite of quality unit tests allows you to refactor code without breaking things and adding features without creating new bugs. 

How to write good unit tests?

Simple: Keep the test code simple. Avoid "if" statements and stick to the AAA (Arrange - Act - Assert) pattern. 

  • Arrange - set up a test environment.
  • Act - take actions that are required for the test.
  • Assert - check the results of the test. 

This pattern improves the structure of the code and makes it easier to read and understand. Make sure always to start writing a test with the Act element. 

Isolated: Never write tests that depend on test cases. Otherwise, you risk getting confused about which test in the chain has caused the failure. By creating isolated tests, it's easier to keep your tests focused. 

Fast: Most unit tests should take only a few seconds each to run. If they're taking several minutes or longer, then they affect the team's productivity, and developers will be less likely to run them regularly and consequently. This ultimately reduces the value of the unit tests.

Well-structured: Each developer reading another developer's code should see what each unit test is doing. If tests are hard to read, developers are more likely to misunderstand them, leading to bugs. But that's not the only reason we advocate creating well-structured and readable tests. Unit tests form code documentation. So for the team to reap the rewards of all the specs, they need to be readable. Some tips on how to make your test better-structured:

  • Give each test a descriptive name (including the code being tested and the expected behavior).
  • Follow good code formatting conventions.
  • Use meaningful variable names.

Reliable: As mentioned above, keep unit tests simple and use clear naming. A unit test must be failure-free no matter how many times you run it. If a test fails when it should pass, then you can't trust the result. So what can cause test unreliability:

  • Have interdependent tests;
  • Run the test by relying on assumptions about the system or environment;
  • Waiting for something to finish in the system or environment before checking the tests.

It's worth noting that unit tests are written by developers who have a deep understanding of the inner workings of system functionality. So if the test fails, the reason might be the required changes or implementation problems. 

TESTING PYRAMID

The test pyramid was first mentioned in Mike Cohn's book Succeeding with Agile. He recommends that applications should be covered by unit tests which is the foundation of our tests. Then we write integration tests, and the peak is made from UI tests. These are all of the type functional and automated tests.

Testing pyramid: test-driven development

Very simple description of three levels of testing pyramid:

  1. At the bottom of the pyramid is unit tests. These are the majority of tests you have for your codebase. As already mentioned, unit tests are great for testing small pieces of a codebase. However, they aren't enough to ensure the quality of a codebase as they don't test the app's interactions with the outside world, and this is where integration tests come in.
  1. The middle tier of an automation pyramid is integration tests. These are tests designed to verify external dependency in software applications. This can be integration with a Database, with a Framework, with third-party external software systems, or even with inter-software components between different layers. Integration tests should not be run as often as unit tests.
  1. At the top of the pyramid is the end-to-end tests. These tests are what they sound like: check that your app is working from start to finish and ensure that the entire system functions as expected. End-to-end tests verify the frontend integration with the backend—this level of test pyramid from the end-users perspective and how they would interact with the app.

HOW TO REDUCE PROJECT EXPENSES WITH UNIT TESTS?

To show you how unit testing looks like in practice, let’s take SCRUM methodology for two reasons:

  • It has iterations;
  • It operates in story points.

Story points are units of measure. Each story is assigned to estimate the total effort involved in bringing a feature or functionality to life.

Iteration is just a fixed amount of time used by the software development team to deliver the functionality. 

PRODUCT DEVELOPMENT WITHOUT UNIT TESTING

As the first example, let’s take a standard iteration for the team that doesn’t write unit tests. We’ll use 12 story points as the delivery goal for the team just for the ease of calculations in the future. We’ll consider the 1 hour the developer spends on writing her code, and a QA engineer spends 1-hour testing this code. 

If developers don’t write unit tests, they need about 10-20% of their time to design the features they will build. They spend 50-60% of their time on actual software development and about 20-40% fixing bugs. 

QA’s time is distributed a bit differently:

They spend 50-60% to design test cases. They also spend 30-35% of their time on supporting developers to test half-made features. And they 10-15% on checking previously designed test cases to make sure that everything runs smoothly. 

Product development without unit testing

This 10 - 15 % has to be transferred to the next iterations to ensure that the developers didn’t ruin anything in the code. 

If we take 10% of the QA time and add it to all the future iterations, the QA team won’t do anything but regression testing after ten iterations. 

PRODUCT DEVELOPMENT WITH UNIT TESTING

At first, it will be difficult for your product team to start doing unit testing. You may expect that their performance will decrease, and they may deliver less than with unit tests. We can see them delivering six-story points during the first sprints. Over time, your developers will improve their skills of writing unit tests, and they will start delivering more until they reach the plateau. 

From the developers' perspective:

The developers will spend almost 20% of their time designing the code. Since we're doing fewer features, we also spend less time coding them. So the developers spend around 30-40% on writing code. And also, they spend about 20-30% writing the unit tests. As a result, since we're doing fewer features and more testing, we spend only 10-20% on bug fixing. 

Product development with unit testing

In the first case, where the team doesn't write unit tests, they will start suffering from regression issues, and their velocity will decrease. 

While in the case of unit tests, the team's velocity will continue to be the same after reaching the plateau. My point is that the more time you invest in unit testing, eventually you will benefit from it in the long run.

Teams velocity in both cases with and without unit tests

Completed work in both cases with and without unit tests

BENEFITS OF UNIT TESTING

Unit testing is an essential part of the agile software development process. Unit testing allows developers to check the performance of each unit and avoid defects in advance. Unit tests save your time and costs throughout the digital product development lifecycle and ensure better code quality. 

Benefits of unit testing

Save development time

Unit tests can be set to run either a one-time check at a specific time or instantly in real-time to review changes. Thus, unit tests help developers identify bugs immediately at the software construction stage and prevent the transition of these bugs to the following stages, including after the product launch. With fewer resources and time spent on finding bugs, teams can save on fixing the bugs later in the development lifecycle. This will also bring value to end-users as they won't deal with a buggy, poorly performing product.

Contribute to code quality

Unit testing inherently increases code quality as it forces developers to write their code more efficiently and thoroughly. Unit testing also accelerates the process of finding bugs. If any changes in the code break the system, developers instantly find the cause and come up with a solution instead of running through the codebase to identify the issue.

Related article: How to Identify and Manage Technical Debt?

Provide quick access to code documentation

Nobody likes writing documentation. Unit testing provides documentation of the system that allows developers to learn what a unit provides functionality and how to use it. But if there's a new developer on the team, she can look at the unit tests and get a general understanding of the built software architecture.  

Also, when we write technical documentation after we have developed part of the software, by the time we have all the documentation ready, the product will no longer be relevant since it changes all the time. Technical documentation should be dynamic. Therefore, when unit tests generate technical documentation, consider it a bonus since there is always a description of the work done in real-time.

Reduce costs in the long run

Using good unit testing tools means you reduce the overall cost of a project. Detecting an error in a unit significantly costs you less than detecting and fixing the error in the later stages of software testing.

CONCLUSION

Test-driven development has many advantages. We focused only on those which can be easily measured and compared. Of course, each project is different and has its requirements and specifications.

But in any case, the cost of writing unit tests pays off in the future because the price of changes that need to be done later without automated test coverage is much higher. 

Curious about software development and testing services? Leave a comment below, or feel free to contact our team.

July 6, 2021No Comments

Sextech Startups: The future of wellbeing

In this blog post, discover some of the biggest obstacles and opportunities that sextech startups face in today's reality. We also shared tips on how to succeed in sextech if you have a product idea.

What seems to be the norm for one person may be unacceptable for another. Unfortunately, it also creates challenges for modern businesses. We use the same social media networks and banks, and all of us use Google for work and personal needs. The reality is that these platforms decide what's acceptable and what's not and what businesses can use them. 

Sextech startups are related to the category banned from advertising, even if the products solve real problems associated with sexual wellbeing. But despite this, femtech is an industry related to female sexual health and is forecasted to increase to nearly 50 billion dollars by 2025

Many investors also see market opportunities for sextech. For instance, Gerda Larsson, co-founder and managing director at The Case for Her, says she started investing in sextech "after identifying it as one of the solutions that could tackle the global taboo surrounding sex and female sexual pleasure. Tech gives people the opportunity to explore, nurture and innovate around pleasure and what that means to you."

Angel investor Laura Behrens Wu says: "My investment in sextech shouldn't be viewed any differently than investments in other types of healthcare, like Headspace or Calm  — and that's a huge, established market. Investors who insist on segmenting out one aspect of our bodies, just because it makes some people uncomfortable, may regret it in five years."

Out of natural curiosity, we've decided to dig deeper and understand why on Earth, in 2021, we're still talking about the stigmatization of information vital for one's health and how we can help people who want to step on the path of making a sextech product.

Related Article: What is Sextech and Why is it Such a Big Opportunity?

THE BIGGEST BARRIERS FOR SEXTECH STARTUPS

Let's start with the main barriers that prevent many entrepreneurs from entering the industry:

The industry is not taken seriously 

There's still a massive corporate block regarding sextech; many people think of porn, robots, VR, and AR experiences. That's not entirely true. Sextech encompasses any technology designed to enhance sexuality. This can be anything from Bluetooth-enabled vibrators and apps for addressing sexual and health concerns. But the industry continues to be ignored and perceived as taboo.

Advertising bans

If you talk to a sextech expert or an entrepreneur, one of the main concerns they will name is the inability to advertise their products on social media. 

Unbound CEO Polly Rodriguez told TechCrunch that sextech products had been silenced by Facebook, Instagram, and Pinterest. 

“Not being able to advertise on them is a big deal because, in addition to the policies being biased and gendered, it prevents those founders from being able to reach potential customers.”

Indeed, a phallic cactus advertising an erectile dysfunction medication - approved—a hand holding a vibrator - not approved. Sextech startups Dame Products and Unbound have launched a website, “Approved/Not Approved,” where you can also play a guessing game of sexual wellness products.

Payments processing

Finding a reliable payments provider is a vital initial step for any startup. But if your product is considered controversial to someone, things can get tricky. Our team has faced such an obstacle when developing a dating platform for our client. They’ve had to battle to integrate payment gateways into their website. It turns out, creating a software architecture was relatively uncomplicated while integrating a payment provider into a dating platform wasn’t.

HR Process

When we talked with Ola Miedzynska, CEO & CO-Founder of S x Tech. She also named an HR process among all the mentioned obstacles for sextech startups. If you're in the sextech business, recruiting a valuable content creator or an experienced salesperson can be a tough nut to crack. As it turned out, a lot of specialists don't want to be associated with the industry. So, Ola's advice is to be open to remote solutions, think global, and hire international professionals. 

Financial constraints

Every new business idea requires one vital thing: money. For young businesses to raise money - they have to be more reactive in what they do and how they do it. But we're in sextech, and things are not typical here. Even when the idea is exceptional, many companies in sextech don't receive investments because of the reputational risks. Fortunately, things start to change. There are a few crowdfunding platforms that already take sextech products: Crowdcube, Republic, Indiegogo

For instance, in 2020, a $25 million Vice Ventures Fund was launched with a mission to "conquer stigmas and strive towards superior returns by investing in good companies operating in "bad" industries." An Israel fund Intimate Capital plans to raise $20 million and invest in developing sextech solutions. 

NEW OPPORTUNITIES FOR THE SEXTECH INDUSTRY

If you have an idea of a sextech product and want to enter the industry, we've good news for you. Compared to such industries as fintech, healthcare, or retail, sextech is small, and almost everyone knows each other. So it's easy to find the right people and network. You can easily pitch your idea and receive constructive feedback from the early voices of the sextech environment. What other industries can boast of such a tight-knit community?

Speaking about successful sextech startups, here are some products that come to mind first. Among them are apps that receive significant investments in the seed rounds (mostly run by female founders). 

CORAL

Coral is a pioneer in the sexual wellbeing market. It’s an interactive app for couples of all gender expressions and sexual orientations with lessons, guides, and real stories to improve sexual life. You can also read the story by Isharna Walsh, founder of Coral, and how she came up with the idea of a sexual wellness app. 

WOMANIZER

Womanizer is a globally operating company with offices in Berlin, Hong Kong, and Ottawa. The patented Pleasure Air Technology provides women with new orgasmic sensations due to touchless clitoral stimulation. In 2020 British singer Lily Allen announced her partnership with Womanizer to raise awareness of self-love and care. This is an excellent example of a celebrity endorsement. 

FERLY

Ferly is an audio guide that brings together sessions, workshops, quizzes, and stories on one app to help users explore and understand how they feel about sex. It's a London-based startup that raised £1.5 million in 2019 from top-tier investors, including Michael Acton Smith (co-founder of Calm) and Sophia Bendz (former Global Marketing Director at Spotify).

TIPS FOR SEXTECH STARTUPS TO TRY IN 2021

If you want to hear more about the future of sextech, watch our panel discussion. Our guests have been in the industry for a long time, and in this video, they give many handy tips on launching a sextech startup.

Speak to people who are already in the industry

Network. Network. Network. And a little bit more networking. Sextech has a relatively small community. It’s easier to reach those who’ve been there for a while and expand your network. Follow sextech experts on LinkedIn as they usually post upcoming events and conferences, which we strongly recommend to attend (even online). It will give you a better understanding of ways to improve and promote your brand. Here are just a few big names in sextech to follow: Bryony Cole, Cindy Gallop, Calandra Balfour, Ola Miedzyńska, Dominnique Karetsos, and many more. 

Have a passion for the industry

Don’t do it if you don’t have passion for your product or the sphere. If you concern about sex education, sexuality, wellbeing and have an idea of how technology can positively impact it, you’re in the right place. But be prepared to face the conservative realities of our world and prove that your product is worth a shot. 

Don’t be afraid to pitch

If you don't have a product or a prototype in your hands yet, don't be afraid to pitch it. Tell about your idea, including your vision, solution, market opportunity, business model, marketing plan, and the team behind your product. Even if you're still a solopreneur, grab your audience's attention and help them get a sense of who you are and how you will grow your team. 

Find yourself a guide person 

Sextech is all about the community. Get to know the industry and find yourself a mentor. 

Educate customers 

Create a community around your brand and educate at every step. It’s all about educating your customers about how sextech products can enhance their lives.

In the nearest future, the apps designed for sexual well-being and education, sex therapy will be regular for our everyday life. Breaking taboo in sextech is a slow process of teaching and putting products into our daily lives. Today you have every chance to disrupt this industry and become among the first to start a sextech revolution. 

ON A FINAL NOTE

Sextech is gaining momentum, and you have all the chances to launch a successful product if you have a passion for it. So, summing up, if you are about to enter this space, don't forget to:

✔️ Network and become a part of the community. 

✔️ Pitch your products even if it's still at the idea stage. 

✔️ Consider an option to work with international teams, as not everyone will eagerly work with sextech. 

✔️ Educate yourself and your customers on the importance of sexual well-being and how your product can improve their lives for the better.

✔️ Get to know the industry and find yourself a mentor. 

Have an idea of a sextech product but don’t know how to start? Or maybe you lack designers and software engineers ready to grow your product? Tell us about your project, and our team will turn your idea into a viable product.

June 14, 2021No Comments

PDP #12: The Story of PayFac-as-a-Service

Payment Facilitation as a Service, or commonly known as PayFac-as-a-Service, offers software platforms the ability to monetize payments and onboard new users. 

In this episode of the Product Drama Podcast (PDP), Caleb Avery, CEO of Tilled and founder of a PayFac-as-a-Service approach, shares how he created this service and was the initial idea. 

Behind the Scenes: 'Tilled' and PayFac-as-Service

Caleb was in the payment business for over a decade. He founded his first payment business while in college and started selling payment services door-to-door.

As he started growing his business, he and his partners began to make payment consulting services for larger companies. As a result, they found out that many of their customers were frustrated with the technology, price, and support of existing payment processing providers. That was a starting point when they decided to create a solution that would reimagine the entire payment facilitation and experience.

Key Takeaways From the Episode

We asked Caleb how he came up with the idea of a payfac-as-a-service and what it was like working with MVP scope. We also talked about assembling a team of developers, what lessons he learned while building his startup Tilled, and more.

Here are some quotes from Caleb:

“Customer discovery is a huge part of the MVP scope”. 

“You have to challenge yourself to continue thinking differently, especially when people are giving you feedback. It’s not always positive feedback. When you go out to fundraise, you may have to talk to hundreds of people, and 95 of them are going to tell you ‘no,’ 15 are going to tell you ‘it’s a horrible idea.’ But you have to continue to press on and have faith that this is a great idea and I am going to change the world, and I am confident in my vision of what we are building”.

“The best thing about the customer discovery process was that the customers didn’t feel like our company was selling because they didn’t have a product at that time.” 

“You can’t tackle every problem right at the gate. You need to figure out the smallest of the MVP that you can get out to the market and get customer feedback. Only then you continue adding features and iterate on your product”.

The book of this episode is “Zero to One” by Peter Thiel

We hope you'll enjoy this talk and find some valuable insights.

If you want to learn more about how to build a FinTech startup and grow it from an idea to a fully-fledged product, watch this episode.

June 7, 2021No Comments

How to Identify and Manage Technical Debt?

  • Are your costs to maintain systems increasing?
  • Do you find it challenging to hire people to work on your project?
  • Does it take longer now to add new features than it did a year ago?

If the answers are positive, this could mean that your organization's technical debt is growing and hamper your company's agility. 

Watch a story about Jim and how he struggled with technical debt.

What is technical debt? 

The Software Engineering Institute at Carnegie Mellon University defines technical debt as "the tradeoff between the short-term benefit of rapid delivery and long-term value." 

Another perspective comes from Atlassian: "technical debt is the difference between what was promised and delivered." In other words, it's prioritizing speed and delivery over a perfect code. 

Research by Stripe suggests that "the average developer spends more than 17 hours a week dealing with maintenance issues, such as debugging and refactoring". 

Let's go back to Jim. He had to add new features to a software system, and at that moment, he had two options: either opt for a faster but compromised solution or take more time to finish the task but later rework the product in terms of resources and time.

Technical debt works the same way as financial debt. If you don't repay the loan, it continues to compound until the loan principal ends up being much higher than the original amount.  

The bottom line is that the longer you ignore technical debt, the more software entropy can occur.

Technical debt is not that bad. Almost every business has some degree of it. After all, the end-users do not notice the technical debt, so the companies often overlook it. For some time, this does not affect the functionality and quality of the product. But having tech debt can turn against your business if you won't keep the "we'll fix it later" promise, get back to it later and do it properly. 

Causes of Technical Debt

It’s acceptable for growing companies that need to release a new product version as soon as possible to test the waters, collect user feedback or analyze market needs.

99 % of projects have a certain amount of technical debt. The rest of them have not been released yet. 

But you need to be careful about software technical debt and know how to manage it; otherwise, it can lead to negative consequences. The more tech debt accumulates during the software development process, the more it can negatively affect the business and slow down the next release. So what causes technical debt?

  • Business pressure to deliver the project to the customer earlier than it was estimated.
  • Poor planning and prioritization of product backlogs when design and development start without proper requirements analysis. 
  • Poorly or hastily written code, when each developer writes code as they see it without adhering to specific coding standards. 
  • Legacy issues continue to generate a cost for the business.
  • Lack of technical documentation. Documentation doesn’t need to be comprehensive: it could be wikis, collaborative documents, or code comments. Well-written and structured documentation allows developers to understand how a system works faster and speed up building new things. 
  • Lack of automated tests, including unit tests and end-to-end tests. Often, developers neglect to create automated tests until the end of the project. As a result, it’s harder to fix bugs and deploy changes that won’t break the build. 

How to manage technical debt?

In a rapidly changing world, it is impossible to create a perfect product. The product teams should accept that there are no ideal products; there are under-analyzed ones. No matter how intelligent and talented team members are, a problem can always arise.

To properly register this debt, it is better to break it down into sources of origin, for example:

  • versions of libraries and applications used;
  • security problems;
  • architecture errors;
  • potential places for code improvement;
  • warnings from compilers, interpreters and runtime platforms.

Technical debt isn’t something that can be effectively dealt with once and for all. Based on our experience, we suggest five ways to manage tech debt:

Refactor your code 

Refactoring is a systematic process of optimizing code and improving the internal structure without creating new functionality. In other words, refactoring is transforming a mess into a clean code without altering its external behavior. 

Refactoring doesn’t mean adding new functionality, rewriting code, or fixing bugs. Refactoring transforms dirty code to reduce the overall technical debt and make your code more efficient and maintainable. 

Measure technical debt

Technical debt in software development architecture is difficult to measure - there’s no single metric to do it. It would help if you created metrics that make it easy to track technical debt. These metrics are specific to each project. We suggest tracking the impact of technical debt using business metrics, namely:

  1. Cycle time: the length of time it takes to finish the task. The average cycle time shows how your developers perform from the first commit to the finish line.
  1. Your current situation: use tools such as SonarQube and Coverity to measure the current state of your software technical debt and technical debt ratio (TDR). The TDR is a proportion between the price you pay to fix a software system (remediation cost) to the price you pay to assemble a new one (development cost). High TDR scores mean that software is in a deplorable state of quality.
  1. Developer happiness: let’s be frank, if your developers are increasingly annoyed while working on a project, this could mean that there’s higher-tech debt in the system. 
  1. The number of bugs: after each iteration, we measure how many serious bugs are left unfixed. It allows us to plan bugs fixing activities for the next iteration. We also track the amount of opened bugs vs. the number of closed bugs. It allows us to be clear of whether our team is moving in the right direction regarding code quality. 

Use Pareto Principle

If you don't know how much time you should dedicate to evaluating existing technical debt per iteration, we suggest using the Pareto Principle. Assign 20% of your engineering activities to technical debt and 80% to daily tasks. In this way, the majority of the time, your team will devote to the main functions and manage the technical debt effectively.

Remember about unit tests

Writing and conducting unit tests more frequently is a way to eliminate regression bugs and recover from technical debt. With unit tests, your development team will improve the code quality, identify bugs more efficiently, and automate the testing process. 

Related article: How Unit Tests can improve your product development?

Treat technical debt as part of your business strategy

Research by Gartner says that companies that have a strategy for technical debt will ship 50% faster. 

Embed technical debt into your project roadmap. It would help if you had a strategy on how much time you’ll spend paying off tech debt: fixing bugs, reviewing code, and reducing the overall debt to build a more resilient product. 

Agree with your development team on how much time you want to devote to managing technical debt. For instance, you might prefer your team focusing on the health of the codebase each sprint or quarterly. Alternatively, you might decide on delivering new features to be the first on the market, then perhaps growing technical debt may be the right decision for you. Establish a clear definition of done in your team, including quality metrics. 

Related article: Digital product strategy: from idea to execution

Is technical debt that bad?

Yes and no. We are used to considering software technical debt as something scary and unacceptable. In a perfect world, it is. But the reality is that tech debt is part of every digital project. Technical debt is like credit cards: sometimes, they are helpful and come in handy. They allow you to get something faster than you could without them. 

"If you're not embarrassed by the first version of your product, you've launched too late." Reid Hoffman

According to Martin Fowler’s technical debt quadrant, it is necessary not to define whether technical debt exists but rather to learn how to identify it. 

  • Deliberate & Reckless: you know that you are making a design decision that will inevitably create technical debt. It's a rarely practiced strategy. The development team feels the business pressure to deliver products faster knowingly violated best practices. 
  • Deliberate & Prudent: "acting with or showing care and thought for the future." This quadrant is about being aware of taking a technical debt. 
  • Inadvertent & Reckless: "things you really should have known but didn't." A team with industry knowledge should be able to avoid this type of tech debt. 
  • Inadvertent & Prudent: when you are doing something new, you inevitably reach the point when you say: "If only I had known this before, I would have done it differently." No amount of analysis can predict what you'll learn over a software product lifetime. 

Summing Up

  1. Technical debt can be your ally if you need to buy time and ship a product faster to the market. 
  2. The best option is to avoid debt, but you are unlikely to succeed.
  3. Don't consider rewriting the entire system as the only viable solution.
  4. Tech debt decreases productivity, so try to get rid of it as quickly as possible.
  5. Don't confuse tech debt with a typical mess.
  6. Don't chase the perfect product. 

Technical debt is holding you back? Let’s fix it. 

Get started

May 20, 2021No Comments

SexTech StartUps: Barriers & Perspectives

Join our sextech panel discussion with industry experts to learn more about the challenges and opportunities for sextech startups and the industry's future.

When people hear the term sextech, their minds often jump to AR, VR, and robots. However, this industry is much broader. Sextech goes far beyond toys. It encompasses all areas of the sexual wellness space, from health to education. It involves businesses and technology designed to enhance sexuality. The apps designed for sexual well-being and education will be normal for our everyday lives shortly. A growing number of entrepreneurs and sextech startups have started to shift the conversation and normalize the idea of sexuality.

Today, we will talk about a sector of the tech industry that is often swept under the rug. 

But first, let’s take a look at what the numbers say:

The industry is slowly but surely gaining momentum. While there are still many obstacles and challenges for companies in sextech, we can confidently say that new opportunities are also opening up for them. 

In this video, we bring together experts to talk about technology, sex, and business. 

Meet our panelists:

Jason Maskell, entrepreneur and startups inspirer, helps them understand where they should move, Founder of ‘Life Force Hub CIC’ and ‘Crowd Capital Limited.’

Calandra Balfour entrepreneur, business mentor, author, and member of Women of Sex Tech, founder of LoveGivr, Risk To Live, and Lust!

Ola Miedzynska - CEO & CO-Founder of Sx Tech (the only conference where deep tech connects to the Internet of (sex!) things!), developed extensive experience supporting startups for over 9 years, a researcher in multiple technology trends. 

During this discussion, you’ll get answers to the following questions:

  • Why is the sextech industry still shrouded in taboo and stigma? Will this situation change somehow soon?
  • What are the biggest barriers for sextech startups? What brands managed to overcome some of them and successfully launched their products? 
  • How to successfully commercialize an idea of a sextech product today and enter a new market?
  • What are the strategies to find investment opportunities for the product?
  • How to educate users and raise awareness about your products?

We hope you’ll enjoy our talk! Click the video below and share your thoughts in the comments.

Brands we’ve mentioned:

Satisfyer

Womanizer

Dame

Coral

Mojo

Vibio

Lily Allen & Womanizer collab

May 19, 2021No Comments

PDP #11: Credit Unions in the Digital Age

Banking and wine are probably two of the oldest businesses on the planet. In this episode of Product Drama POdcast (PDP), we cover both. Our guest Kirk Drake is a leader, author, and serial entrepreneur focused on credit union technology. We talked about how to help credit unions compete in the digital age, enhance their creativity, and forge better connections with their members. 

Here is a quick rundown of what you will find in this episode:

  • How can credit unions get in on the fintech phenomenon?
  • What credit unions and wineries have in common?
  • What is BrandBucket and how it can help early-stage startups? 
  • How to write a pitch so that your mom gets instantaneously what problem you solve and how you do it?
  • What is an archetype workshop and how can it benefit your business in the long run?
  • How “Ongoing Operations” encourage credit union startups to experiment?
  • What is a strategy scorecard framework and how it can assist you in aligning an organization around a common mission and vision?
  • And much more!

Apart from a bunch of insights for startups, Kirk also shared his list of must-read books. 

We hope you enjoy our talk! Click the video below and share your thoughts in the comments.

cxdojo.com Facebook
cxdojo.com Twitter
cxdojo.com Dribbble
cxdojo.com LinkedIn

541 Jefferson Ave. Ste. 100
Redwood City, CA, USA 94063

4a bakulina st. Ste. 48
Kharkiv, Ukraine 61000

4a bakulina st. Ste. 48
Kharkiv, Ukraine 61000

Frame-2

© Copyright 2021 CXDojo

0