How to choose a direction for the development of an IT project: 1cloud experience



    In our blog on Habré we talked about how the creation of 1cloud virtual IT infrastructure provider began . Today we will continue to talk about how we are developing the project and what in this respect we can tell teams that are just starting their way in business.

    On the one hand, the choice of direction for further development means that the project is doing well - it has room to grow. On the other hand, the number of these same directions may be too large. Or vice versa, the company can only see one possible path, while in fact there are several. Below we will talk about which ways to improve 1cloud we have chosen, and how it can be useful for other projects.


    Where to develop: “around” IaaS


    In the last part of the story, we talked about how our ideas about potential customers and their tasks changed very much after the launch of the service. In this regard, we decided to continue studying the portrait of our consumer in order to better understand how to help him solve his problems most effectively.

    First we identifiedthat most of our clients are not individuals, but legal entities, which, in addition to the direct services of an IaaS provider, need to appropriately formulate the costs of these works as part of accounting. Next, we decided to continue to study the needs of this category in order to understand what other services may be in demand for them. And in the end, they came to understand that a number of our corporate clients might be interested in the possibility of creating private networks.

    There are a number of reasons why building a private network is good for business. Here are security issues (not all traffic can be "driven" through the public Internet, plus not all servers have access there, in principle), and increased speed (usually, the speed of public connections varies from 10 to 100 Mbit / s, the width of the private channel we have a network of 10 Gb / s), and an increase in the efficiency of applications. As a result, now in the interface of the 1cloud control panel, it became possible to organize a private virtual network (one or more) and include client servers in it.



    Creating a private network through the 1cloud control panel

    Another task that we noticed was the question of improving the quality of integration of client applications with our cloud and facilitating interaction with our infrastructure for customers. In order for clients to be able to manage their servers from third-party applications, we implemented the REST API.

    In this case, it was especially important for us that the API can be useful both to private users who do not want to deal with complex technologies, and to large clients and partners who plan to create their own services based on the provider's infrastructure. So we helped make the service more convenient for a whole group of users, including resellers of our services, partner companies, and application developers (the API helps them automatically scale the hosting infrastructure).

    Conclusion:If you are studying the development directions of your own product or service, pay attention to those that will allow you to cover the needs of as many categories of customers as possible. None of these functions can probably be called a “silver bullet,” but you can be sure that your efforts will not be wasted, even if these are services that are not “primary” to your product (like in the case of automation of accounting tasks).

    Moreover, you should pay special attention to such non-core additions if right now a large-scale redesign of the functional or its radical improvement (from the point of view of your main area of ​​work) is difficult or impossible. Instead of trying to slightly improve something from the main functionality (simply because, as you think, the time has come for a change), pay attention to those features that will make everything more convenient that “surrounds” your main project.

    Changes on the fly


    Cloud infrastructure is popular because of its flexibility - that is why at some point we decided to “strengthen the strengths” of our service: if by default we have advantages in comparison with creating in-house infrastructure, it is worth making them even more explicit. And since we are a provider of IaaS & PaaS solutions, in our case, such an “amplifier” was the concept of changing the parameters of the cloud infrastructure or the technology stack used on the fly, right along the way with the service.

    High performance

    Needless to say, APIs and private networks are not the only things that corporate clients may need. Very often, companies that are at the stage of rapid growth resort to the services of creating cloud infrastructure: for example, the number of product users grows so fast that the company’s existing technological stack simply cannot cover its needs. In such cases, the company needs not just “some kind of” infrastructure, but high-performance or simply “large” servers (machines with up to 32 CPUs and up to 128 GB RAM per server).

    Naturally, not all companies provide for themselves a similar development scenario from the very beginning - therefore, we have not just implementedthe opportunity used by high-performance servers, but also decided to develop a mechanism that allows customers to migrate their infrastructure to a more productive pool as they work. And this refers to “strengthening strengths” - providing a service that fully complies with the concept of cloud work.

    Disk space and disk types

    The same principle lay in our decision to provide users with different types of disks for solving different tasks. Such an approach may be justified when creating tiered storage systems - data that is often used by applications can be placed on faster disks, such as SSDs, and for storing online backups, you can connect to the server slower, but cheaper and larger in size SATA- disk.

    Such use of various types of disks allows making the general infrastructure solution more flexible, efficient and cost-effective - and these are exactly those characteristics of cloud services that it was very important for us not to lose sight of when developing new functionality.

    Our decision to provide users with the ability to manage disk space on the fly meets exactly the same requirements - this way they can order additional disks for their virtual servers without stopping them. And since this is also a strong point for us, we decided to spend additional effort and time to eliminate the difficulties that previously accompanied this process for the user (a more detailed story about this here ).



    The server disk space administration panel in the 1cloud service

    Conclusion: your service, line of work or product probably has “default” strengths - that’s why you work in the chosen field. It is important that the improvement efforts do not bypass this direction as well - you can just make strengths a real advantage not only, as they say, by design (in comparison with less promising technological concepts), but also in relation to other players in your market .

    Tasks to facilitate the work of non-specialists


    Facilitating work with the service for non-specialists - both corporate customers and individuals - is another successful direction for the development of the project. We in this area decided to introduce several innovations at once.

    Virtual server templates

    Setting up a server is a non-trivial task for a non-specialist, therefore we decided to make it easier for customers to work with the hosting infrastructure and speed up the process of scaling it up, giving them the opportunity to save templates of already configured virtual servers.

    Preset hosting control panel

    Among the users who buy VDS hosting with a pre-installed control panel, there are also many customers who are not ready to delve deeply into the IT topic: they are the owners of sites (personal pages, hobby resources, small business projects, etc.), reseller companies hosting services, web studios and agencies that need to “host” customer sites somewhere.

    All these users, both private and corporate, it is important to quickly deploy the site, without plunging into technical problems. And this means that to ensure the desired level of convenience and speed, you need to save users from the need to install, configure unnecessary software, as well as monitor its work and the relevance of licenses.

    To do this, we implemented a server order function for organizing our own hosting with a pre-installed control panel. At the same time, the server is configured in a special designer, which in real time shows the change in its cost depending on the choice of parameters.

    License re-ordering

    Another headache that hosting users face is the administration of leased licenses for the programs they use. To facilitate tracking information about which licenses are activated for a particular server, as well as data on their cost, 1cloud has a special page. With its help, users can also easily order the necessary licenses or renew existing ones. 1cloud



    Service PageDedicated to reorder the licenses

    Conclusion: At first glance it seems that the service does not make a functional, but also convenient for the person who is far from a deep understanding of your topic, it is difficult. In fact, of course, a lot of things in solving this problem depend not only on the technological capabilities of the product, but on its usability .

    As for the solutions themselves, they can be implemented quite simply and not require an exorbitant amount of time from your employees. This is exactly what happened in the case of your described functionality - clearly defining for ourselves what exactly we want to change and how to achieve this, we implemented it fairly quickly and without any problems.

    conclusions


    • If you are looking for directions to develop your service and product, but are not ready for a radical restructuring of the system or impressive changes (or you think that they are not needed, but you feel that small improvements can still not be avoided), pay attention to the “supportive” ones functions of your product: how convenient it is to pay for your services, what documents should accompany this process, which “close in spirit” improvements will be gratefully accepted by your customers. Of course, it will not be possible to do without a thorough study of your users here (as in other situations) - but everyone knows this by default.
    • Do not forget about your strengths: it is possible that they need improvement, after all, it is around these decisions that your product is built. In our case, the development concept itself is prompted by the concept of a cloud service - we try to make it exactly the way it should be.
    • Work with non-professionals: a difficult, but grateful direction of development. Even if your customer audience is predominantly other companies, this does not mean that they will necessarily have specialists who have the time and knowledge to understand the work of your product. Most likely, even those who could do everything “do-it-yourself” will thank you for automating certain services and providing easier-to-use solutions - in the end, that’s why companies or people turn to you: what you doing for them is not their main job.

    PS A little more about how we improve the performance of the virtual infrastructure provider 1cloud :


    Also popular now: