This is the best time for developers. The digital industry is booming, the traditional cloud computing industry is maturing, and emerging technologies such as big data, the Internet of Things, artificial intelligence, and blockchain are flourishing, providing developers with a lot of room to use their skills. However, at the same time, the emergence of new technologies has also made developers anxious about the capabilities of existing technologies and confused about the choice of future paths. In March 2021, Alibaba Cloud commissioned Forrester Consulting to conduct a survey on the Chinese developer community. Through an online questionnaire, 422 people in different roles including internal enterprise application development, testing, operation and maintenance, as well as a wide range of developer groups including independent developers were surveyed. At the same time, in order to fully reveal the value and opportunities brought by the cloud-native era to the developer community and the key cloud-native technologies that need to be paid attention to, Forrester also interviewed 9 experts including corporate CTOs, university professors, open source community experts, and developer community opinion leaders (KOLs). (Download the report at the end of the article) It is undeniable that cloud native has opened up more possibilities for developers. The evolution of cloud native technology provides developers with a smarter way to work, that is, to make full use of the components and tool chains of the cloud native platform, shield the underlying technology and save unnecessary time, and focus more on business value creation and innovation. If cloud is a belief, then cloud native is an attitude, and the times call for everyone to become a cloud native developer. Developers’ evolution path Looking back over the past 30 years of development, on the one hand, the vast number of Chinese developers continue to play an enormous economic and social value. On the other hand, social and economic development is also changing the way the whole society creates and realizes value, and continues to bring about changes in software and application R&D and delivery models, thus providing developers with a broader space to fully unleash their imagination and creativity. The composition of developers has evolved from the initial group represented by traditional developers to the gradually emerging cloud developer group, and then to the growing cloud native developer group. The mission of developers themselves has also changed from the former executors of enterprise informationization strategies to the current digital transformation business enablers, and in the future they will further become technology leaders of digital innovation. Traditional developers are the executive force of enterprise informationization strategies. In the 20 years from 1990 to 2010, they often had nothing to do with the applause and praise under the spotlight, but they were the ones who actually implemented the business strategies of enterprise decision makers. Through the development and implementation of various information system applications, traditional developers help enterprises build information infrastructure and business platforms, realize the business functions required by internal users and external customers, help enterprises cope with the rapidly changing market environment, and continuously explore new business areas and new business models. Although the digital transformation of various industries is in full swing, many industries are still based on traditional application construction and development models. For example, the waterfall development model requires functional design, development and testing on the one hand, and technology selection, resource preparation, component debugging, continuous construction and version deployment on the other hand. The whole process is long, technically complex, and requires a large development team. As cloud computing technology matures, traditional development models can no longer meet the development needs of the times, and developers are beginning to leverage the power of cloud platforms. Cloud development can effectively ensure the modernization of R&D and operation and maintenance teams, and promote the continuous improvement of R&D and operation and maintenance technical capabilities from the platform tool level. The standardization of technical capabilities brought about by cloud development has greatly improved the work efficiency of developers, including the configuration efficiency of development and test environments, the software and hardware development efficiency of functional components and business systems, and the efficiency of service-oriented, component-based, and grayscale release and deployment. However, we have also seen a phenomenon that most companies that have implemented cloud applications have not achieved a fundamental change in their application development model. In these companies, developers' use of cloud computing is still limited to isolated scenarios, such as infrastructure or specific business applications. At the same time, the imperfections of the cloud platform itself in terms of development tool chains and integrated services have also affected the acceptance of the cloud development model by more developers. Then, container technologies represented by Docker began to rise, followed by K8s. In the endless pursuit of performance, efficiency, portability, manageability and convenience by developers, cloud native technology came into being. Cloud native enables cloud development models to have more powerful tools and new application construction and innovative thinking. Of course, cloud native developers are not only reflected in the mastery and application of emerging technologies such as Docker and K8s, but also in the shielding of the complexity of the underlying technology through cloud native technology, so as to achieve better application integration and delivery, thereby helping enterprises innovate. Forrester research shows that 73% of developers believe that cloud native can enable more internal employees of enterprises to become developers. Cloud native drives the arrival of a new era of development Cloud native is the upgrade of cloud computing. Cloud native includes a large number of new PaaS layer technologies and new development concepts. It is the shortest path to unleash the value of cloud computing and also promotes the upgrade of cloud computing. The entire cloud native technology stack is based on open source and open technical standards. CNCF is also committed to standardizing cloud native technology and providing users with a standard interface for using cloud services to avoid vendor lock-in. Let's take a closer look at applications that are reconstructed or rewritten based on cloud-native technologies and cloud-native architectures. For example, applications based on service mesh or Serverless have the ability to scale horizontally and can cope with the rapidly growing business scale in the Internet era at any time. They also have built-in high availability capabilities, so applications do not need to focus on high availability solutions in distributed environments. Cloud native is not only an upgrade of the application architecture that uses the cloud, but also an upgrade of the cloud platform technology and cloud services. From the perspective of building cloud native applications, the reconstruction of applications by cloud native is reflected in the entire life cycle of application development. In this process, we have seen some trends: for example, containers + K8s have become technical infrastructure. Containers decouple application runtime from the environment, and K8s decouples resource management and infrastructure. It encapsulates the infrastructure layer downward, shields the differences in the underlying architecture, connects heterogeneous computing power, integrates the cloud, edge, and end, and builds a distributed cloud; it supports a variety of heterogeneous workloads upward, and is distributed, elastically scalable, and mesh-decoupled, promoting the modernization and evolution of application architecture. It can be said that containers and K8s have become distributed operating systems in the cloud computing era. In addition to changes in development models, we also see that driven by cloud native, an era of full cloud development is coming. By the end of 2021, 68% of organizations will use containers in production environments, a 39% increase from 2020 and a 240% increase from two years ago. Alibaba achieved 100% containerization in 2016, and in 2021, 68% of companies will use containers in production environments. It is certain that containers have become an absolute trend. The willingness of developers to develop on the cloud has reached 68%. A large number of developers have already perceived the changes brought about by development on the cloud, including front-end/back-end, web pages, mobile terminals, applets, logic, models, components, etc. Development on the cloud has brought about improvements in productivity and a significant increase in efficiency. By the end of 2021, 25% of developers will use serverless products. Today, Alibaba Cloud has begun to invest heavily in serverless research and development, providing products such as Function Compute FC, Serverless Application Engine SAE, Serverless Container Service ASK, Serverless Infrastructure ASI, and Elastic Container Instance ECI. At the same time, in terms of developer tools, Alibaba has open-sourced the industry's first serverless developer platform - Serverless Devs, through which developers can experience serverless products with one click and deploy serverless projects at high speed. From the perspective of the majority of developers, on the one hand, developers can clearly feel the fluidity of the cloud platform from the resources, capabilities to the value level, which has brought great convenience to application development and system operation and maintenance; on the other hand, developers have also been troubled by heterogeneous development technologies on and off the cloud, trivial development tools and fragmented collaboration processes, and are unable to fully carry out technical practices in the cloud. As cloud native develops and matures, related products and tools are solving the pain points faced by developers. For example, the consistent packaging of container images enables developers to achieve application portability in different environments; the separation of code and configuration effectively simplifies the development and testing process of developers; serverless computing can help developers quickly open development and test clusters without complex configuration; CI/CD cross-cloud build and deployment capabilities allow developers and operation and maintenance personnel to ensure fast and stable iteration of complex applications in heterogeneous environments. As a one-stop DevOps platform, Yunxiao integrates Alibaba's cloud-native development model summarized over the years into its products, providing developers with easy-to-use cloud-native R&D solutions. The out-of-the-box cloud IDE, code management platform, and CICD pipeline allow the entire process of development, testing, and deployment to be seamlessly integrated with the cloud-native base platform, further lowering the threshold for developers to get started with cloud-native technology, accelerating the transformation of cloud-native technology, and significantly improving software production efficiency. Driven by market and technological development, the development and construction of enterprise applications and software will move towards cloud native. At the same time, the maturity of cloud native development platforms will in turn drive more enterprises to choose cloud native. The cloud native development model will become an inevitable choice for enterprise application development. Alibaba Cloud promotes full cloud development and practice by building an open source ecosystem Standards and open source have accelerated cloud native and promoted the better implementation of all-cloud development. Today, Alibaba Cloud has more than 2,600 open source projects on GitHub, covering big data, cloud computing, AI, middleware, containers, Serverless and other fields. It has more than 30,000 contributors and over one million GitHub Stars, ranking first in the GitHub contribution list of Chinese enterprise open source communities. Among them, some open source projects have also become de facto standards in related fields. Among them, Dubbo has become the most influential and widely used open source microservice framework in China; RocketMQ is the first Apache top-level project of Internet middleware in China, and it is also the most popular open source middleware project in China for many years. In addition, we also have the application management engine KubeVela, Alibaba's first edge computing project OpenYurt, which was just open sourced last year, ChaosBlade, a chaos engineering tool in the field of distributed high availability, Nacos, a service registration and discovery, and Serverless Devs, the first Serverless developer platform. Facing the entire technology community, Alibaba Cloud has contributed the technological achievements of many years of research and development to the world's top foundations, such as the Open Atom Open Source Foundation and the Apache Foundation. Alibaba Cloud is committed to creating an open, standard, and healthy technology ecosystem. If a developer wants to build an open source architecture based on cloud native technology, he can find his own tools in the Alibaba Cloud ecosystem. Alibaba Cloud has already served a large number of enterprise-level top users, and is also building an open standard technology system to serve global developers. It is a trend for enterprises to migrate to the cloud. Alibaba was the first in China to open source its self-developed RocketMQ, which has become an Apache top open source project. RocketMQ provides users with high-performance, high-reliability, and low-latency message services, and has become the preferred solution for popular financial-grade business messages in the industry. With the development of cloud-native technology, full cloudification has become a general trend. Many companies have deeper demands for the evolution of message middleware. We will release RocketMQ 5.0 in the community and business at the same time, redefining the new concept of integrated fusion processing of "messages, events, and streams". RocketMQ 5.0 will bring changes in three aspects: cloud-native infrastructure, message streaming processing, and event-driven. First, based on Alibaba Cloud's large-scale production practices, RocketMQ 5.0 will provide an adjustable minimalist elastic architecture for multiple scenarios to help enterprises strike a balance between resource elasticity, operation and maintenance complexity, and business ecosystem innovation. Second, RocketMQ 5.0 will provide a new lightweight streaming processing framework for high-value message data, making it easier for enterprises and developers to process message calculations and analysis nearby. Finally, RocketMQ 5.0 will be based on open standards, connect cloud services and open source ecosystems, and cooperate with the Serverless development model to provide users with low-code, serverless, next-generation event-driven architecture services. Reference article: Finally! RocketMQ releases version 5.0: major architecture refactoring, code changes up to 60% When cloud native was first proposed, it was based on resource cluster management and operation and maintenance. However, if all workloads are to be run on a set of infrastructure today, there is still a lack of application management. Therefore, we proposed to focus on applications, separate concerns, and define all development and operation infrastructure, cooperation boundaries, protocols, and methods, that is, the one-stop application management and delivery platform KubeVela. In June this year, KubeVela entered the CNCF Sandbox. Currently, the number of image downloads has exceeded 300,000, and it has more than 20 global enterprise customers. This year, OAM was also established by the China Academy of Information and Communications Technology as an industry standard. Nowadays, more and more computing power and businesses are beginning to sink to places closer to data sources and end users. As the scale and complexity increase day by day, the operation and maintenance capabilities in edge computing scenarios are beginning to be overwhelmed. In order to promote the coordinated development of edge computing and cloud native, Alibaba Cloud has open-sourced the core framework of edge container service ACK@Edge, OpenYurt, to the industry and donated it to CNCF. Adhering to the industry's first "non-intrusive" concept, OpenYurt has the ability to cover all scenarios of edge computing, becoming the preferred platform in the field of ecological compatibility scenarios. Its applications have covered dozens of industries including IoT, audio and video, logistics, etc., making cloud native ubiquitous. Cloud native makes developers better In such a rapidly changing era, every developer and individual who wants to become a developer needs to keenly grasp the pulse of the times, the changes in the needs of enterprise digital transformation, and the direction of technological development. More importantly, they need to be able to see various challenges outside their comfort zone and find room for further growth. Whether you are a young person who has just entered the workplace or a senior engineer who is about to enter middle age, every developer will encounter unique challenges in the process of growth, such as: career challenges. Faced with high-load work and family burdens, you can no longer compete with young graduates in staying up late to work overtime, and it is increasingly difficult to ensure work efficiency during continuous overtime; you want to improve your skills, but in the face of the surging wave of technology, you no longer have enough energy to distinguish between pearls and bubbles. As companies move to the cloud, the underlying infrastructure and platform tools are becoming increasingly standardized, automated, and intelligent. Under the traditional technical skills system, their jobs are becoming increasingly homogenized and even marginalized, and the anxiety about career development is increasing along with their age. When they look up at the outside world, they find it difficult to find their own position; or when they finally find the opportunity they expect, they find that their technical experience has become narrow and outdated. During the survey, 72% of the respondents reported that they needed to master more business and industry knowledge in the face of a rapidly changing market environment, and 70% of the respondents believed that as companies pay more and more attention to customer experience, developers need to master relevant customer experience knowledge. In addition, various internal and external factors have put forward higher requirements on the skills and qualities of developers, and developers are urgently required to accelerate their self-transformation. The evolution of cloud-native technology has brought developers a way out. The cloud-native development model will become the mainstream model for future application development and help developers differentiate their personal technical competitiveness. From containers/K8s, microservices, service meshes to event-driven serverless computing applications, from the management of application catalogs, service catalogs, and image repositories to the deployment of public clouds, private clouds, and edge networks, the evolving cloud-native full-stack technology brings developers new resources, assets, and architectural perspectives, allowing developers to embrace more modern technical methods, tools, and best practices, and achieve vertical improvement and innovation of their own technical capabilities. Enhance technology adaptability and achieve cross-domain development. Cloud native technologies represented by containers, microservices, and Serverless have enabled databases, AI, big data, audio and video, blockchain and other technical fields to continue to innovate under their influence; and based on the platform capabilities of K8s, developers have the opportunity for the first time in history to coordinate multiple emerging technology fields that were once separated from each other and achieve horizontal expansion of their own technical capabilities. In addition, developers have the opportunity to explore distributed application architecture design, development, testing, and operation and maintenance. Not only will it broaden your technical horizons, but it will also enrich your development experience and effectively enhance your own competitiveness and adaptability. Improve collaboration efficiency and explore business innovation. With the support of cloud-native technologies such as containers and K8s, CI/CD and DevOps practices have ushered in another leap forward. The simplification, automation and integration of application development processes not only allow developers to focus more on in-depth understanding of business needs and customer value, and meet customer needs more quickly and effectively; at the same time, they can explore business innovation by solving business problems. Cloud native makes it possible for developers to realize their vision of full cloud practice, but developers must also be aware that the mission of leading digital innovation in the next decade is not something that can be achieved overnight. Developers should focus on the technical capability requirements of cloud native developers and pay attention to value realization from a forward-looking perspective. Technology can promote transformation and lead innovation, but technology is not the purpose. Technology should serve the business. In their daily technical practice, developers should actively understand the specific business needs behind the technology implementation, be familiar with the business concepts behind the communication language of business personnel, and try to further explore the customer goals behind the business needs. Secondly, developers should also abandon common stereotypes, such as the wrong ideas that customer experience is beautiful interface design, experience is only related to UI and has nothing to do with technical personnel, etc. Developers need to think from the perspective of others and integrate the idea of customer value into their own technical practice process. Finally, developers need to think hard, such as what are the core business problems that technology solves? What are the business causes of these problems? What business pain points have not been considered and can be further enhanced? Only in this way can we truly start from the perspective of business and customers and promote the improvement of our own technical capabilities from the outside to the inside. While helping enterprises quickly implement business needs, cloud native technology also forces enterprise developers to have a business perspective, focus on business logic, and do things with more innovative value. The times call for cloud native. This is the best era for cloud native and for developers. Alibaba Cloud is on the road to help every developer become a better version of themselves. |
<<: Building the fiber optic network for the next 20 years
>>: Are enterprises ready for open RAN?
Since its major launch two years ago, 5G has cont...
RAKsmart is a foreign hosting company operated by...
The GSMA called on regulators worldwide to increa...
[51CTO.com original article] The Global Software ...
The CAN bus was originally designed by Bosch in t...
The introduction of the new infrastructure strate...
My wife, who has always been worried about her ch...
Wikihost, also known as Micro-base, was founded i...
Yesterday I shared the news about Maxthon's L...
With the development of communication technology,...
In the early days of the website, we generally us...
Why do you need to place servers geographically c...
[[421757]] Verse: Do not advise others to do good...
Ask any IoT vendor what makes their product excit...
In daily operation and maintenance work, file tra...