Please introduce your company and give a brief about your role within the company?
Redwerk is a full-cycle software product development agency. Since 2005 we have been helping companies worldwide design, develop, enhance and test their products. Having started with a team of 3, now our headcount is close to 60.
In a nutshell, what we do can be described as "Software as a Service as a service". We specialize in a vast majority of modern software solutions which are SaaS or PaaS. A typical SaaS solution consists of a backend with database and business logic, a web frontend (normally responsive), mobile apps and sometimes also of an API for 3rd party developers.
I am the Founder and the CEO of the company. I learn new skills and design processes to delegate them to others, who are better at them than I am. My background is software engineering and before establishing Redwerk, I have played various roles in the software development industry like C++ developer, team leader, architect, project manager, product owner and technical writer. My interest in computers started at a very young age. I was 6 years old when I first saw a computer and 8 when I wrote my first program.
What was the idea behind starting this organization?
The initial idea was to build a one-stop shop that can address every phase of a software development lifecycle: business analysis, functional and tech specification, UI/UX design and visuals, development, testing, deployment, maintenance and support. That’s why we’re not only a team of developers, but also QA engineers, DevOps, UI/UX and graphic designers, project managers and business analysts. Our customers appreciate the fact that everything is done in-house, without the need to employ multiple agencies and coordinate work between them.
What are your company’s business model in-house team or third party vendors/ outsourcing?
All the work is done by full-time employees of Redwerk in our two R&D centers in Ukraine. We do not use any external resources nor do we work with freelancers. Also, we do not outstaff. If you’re looking to screen and hire individual developers, hiring an agency for that is a huge overhead. What we do is manage teams, and take care of the entire process, including resource selection and also of replacements. Basically, providing managed teams where communication, planning, deadlines, as well as QA and code reviews are taken care of internally.
How is your business model beneficial from a value-added perspective to the clients compared to other companies' models?
In our typical managed team setup, communication is streamlined through a PM/BA from our side and the developers’ work is tested by a QA person. Our UI/UX team can also assist with new screens and flows. DevOps are to be called for on demand. Involving additional resources is flexible and our customers only pay for the actual hours we worked on their projects. On-demand usage lets reduce costs dramatically compared to outsourcing or outstaffing each role full-time. On top of that, our rates for all of these roles are very moderate compared to Europe and North America as our R&D is located in Ukraine, a country which is known for its engineering talent and education.
What industries do you generally cater to? Are your customers repetitive? If yes, what ratio of clients has been repetitive to you?
When we started back in 2005, we had two customers: a leading vendor of e-government solutions in Benelux, and an electronics manufacturer, whose parts were used in the NASA Sprit and Opportunity mission to Mars.
I like to say that technology is something you can apply both in a church and in a brothel. It’s pretty much the same stack, be it web, mobile, machine learning or AI. Specializing in technology, in the later years we extended our industry knowledge to media and entertainment with US customers. We also helped one of our clients to take care of their legacy products through data mining. Recently, we worked on machine learning for a venture capital fund organization that wanted to shorten their decision-making time on loans with the help of AI. I’m really happy that most of our customers recommend us to their partners and bring us into their new companies when they switch jobs. Considering this repetitive, I would say that we get about 70% of business through word of mouth.
Mention the objectives or the parameters critical in determining the time frame of developing a mobile app.
For proper expectations management, before starting any project, we provide our customers with a detailed offer indicating the budget range and the delivery timeframe. Like in any software project, the detail level of the specification is the decisive parameter. Even in an agile process, you cannot start building the first prototype with too many unknowns. That’s why requirements check is a must. If they’re too broad or vague, it’s important to establish the functionality. For a mobile app, the best way to describe the functionality is a set of wireframes that clarifies its flow and business logic. If that’s unavailable, as a full-cycle agency, Redwerk offers prototyping and functional specification writing service. Together with the customer, this discovery effort up to a week for an average application introduces much more clarity and confidence when assessing the development effort and delivery timeline.
How much effort in terms of time goes into developing the front end and back end of a mobile app?
It’s tricky to generalize on this question because it depends on how much overall business logic resides on frontend vs backend. For example, if it’s a casual game, of course, 90% to 100% of the effort is the mobile app itself. However, an app like the one managing table bookings for restaurant owners, where the frontend only visualizes the data from the server and submits changes back via the API, the effort distribution is 20% frontend vs 80% backend.
What are the key parameters to be considered before selecting the right platform for a mobile application?
While a lot has been achieved to make app development easier, from Titanium Appcelerator to Xamarin and React Native, the outcome is that it’s still easier to find developers with native skills. One of the main questions you need to answer when choosing a technology is: How easy is it to find a developer with the required skillset? While bringing web technology mobile was supposed to extend the army of the mobile developer, in reality, it requires knowledge of both web and a mobile stack of technologies, making it more difficult to find required talent. However, for games and graphics apps, Unity is an option to consider.
Which platform do you suggest your clients to begin with when they approach you with an idea (Android or iOS) and why?
Nowadays choosing a store is more a business decision than that of technology. If the app itself is value, iOS App Store is better for selling the app or in-app purchases. By far people shop more there compared to Google Play. Selling a casual game or premium content? Post it on App Store and get more buys. However, if user outreach is the goal, Android userbase is bigger. It is the case when the app is a gateway to the value, which is not only available mobile. Consider an internet banking client app. Special cases are when your main target audience is users of a specific platform. For instance, if you’re selling drones and your research says most of your users are on iOS, you may want to start with this platform and then extend to Android.
Android or iOS, Native or Hybrid — which platform is best to use to build your app? What are your recommendations?
Cross-platform and WYSIWYG tools are great for prototyping or creating small apps that visualize the data coming from the backend. Problems begin when you try to do something the platform authors haven’t thought of. I saw cases when workarounds for platform limitations were equal or more significant in effort than re-writing the entire application natively. This is not just my observation. Earlier this year in June Airbnb announced it would be dropping React Native, whose development it was investing heavily into. Among the reasons, there were both the framework immaturity and three environments expertise their mobile developers had to possess. Airbnb switched entirely to native apps for both iOS and Android.
What are the key factors that you consider before deciding the cost of a mobile application?
As we work on a time and materials basis, for us hourly figures are the main factor that influences the cost of any software. We usually break down a project into smaller, more chewable chunks (functionalities, screens, parts of business logic) and give them two hourly figures: optimistic and pessimistic. Once all estimates have been collected, we sum them together and multiply by our hourly rate. The result is the cost of the project. Speaking of a typical mobile application, the factors to take into account are: the number of screens, external API and payment system integrations, push notifications, and non-standard UI controls.
What kind of payment structure do you follow to bill your clients? Is it Pay per Feature, Fixed Cost, Pay per Milestone (could be in phases, months, versions etc.)
We work on a time and materials basis, where the cost is driven by the amount of development, testing, design and project management hours. We only bill for the hours we work on the customer’s project, logging them daily into our issue-tracker for better transparency. Our customers have access to our tracker, where they can log in anytime to see how many hours have been spent today, this month or overall. If during the development phase there is scope creep, our project managers are instructed to pro-actively notify the customer about a possible increase in the resulting man-hours due to newly requested functionality addition or update. Our billing frequency is monthly, so at the end of each month we send out invoices based on the amount of logged hours.
Do you take in projects which meet your basic budget requirement? If yes, what is the minimum requirement? If no, on what minimum budget you have worked for?
Our sales team is instructed that the minimum budget requirement is the price of 100 man-hours. However, you shouldn’t neglect minor projects. Sometimes accepting a small project can lead to huge opportunities, making your business great again.
What is the price range (min and max) of the projects that you catered to in 2018?
Many of our projects have no end. A modern software as a service product can only survive by continually adapting to the needs of its customers, A/B testing and improving its functionality. Through managerial decisions, projects can be moved in-house for customer’s own developers to continue. In this case, proper documentation and hand-off effort are undertaken. Another possibility is that an active development phase has been done and the project goes into UAT mode, where we only do maintenance as little as 20-40 hours per month until further decisions are made. Our duty is to assure its stability while adding no major features. On the low end, there was an $8,000 e-commerce website update that we did for a customer in the United Arab Emirates.
Which business model do you suggest to your clients enabling them to generate revenue from mobile applications? Why?
The business model should be closely related to the idea of the application. While free with in-app purchases is a good option for premium content apps and for games with virtual goods. An advertisement is better for social applications, where ads can be seamlessly blended into the flow.
Kindly share your feedback on how GoodFirms has been doing so far in increasing your visibility among potential clients.
GoodFirms has been doing a great job contacting our customers for reviews on time and keeping a close eye on Redwerk’s progress, treating us with various achievements. My marketing team loves you for that. We got some leads through the listing on your site as well.