Introduction: If cloud is a kind of belief, then cloud native is a kind of attitude, The Times call everyone should become cloud native developer.
Author | Ding Yu (tertiary), alibaba researcher, ali greetings, head of the original application platform
This is the best of times to be a developer.
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. Developers have a lot to offer. At the same time, however, the emergence of new technologies has also caused developers to become anxious about the capabilities of existing technologies and confused about the path to the future.
In March 2021, Alibaba Cloud commissioned Forrester to conduct a survey on Chinese developers. Through an online questionnaire, the survey surveyed 422 people in different roles, including internal application development, testing, operation and maintenance, as well as a wide range of developers, including independent developers. In order to fully reveal the value, opportunities, and priorities of cloud native technologies for the developer community, Forrester also spoke with nine ctos, university professors, open source community experts, and developer community opinion leaders (Kols).
There’s no denying that cloud native has opened up more possibilities for developers. The evolution of cloud native technology provides developers with a “smarter way” to work by leveraging the components and toolchains of the cloud native platform, masking underlying technologies and saving unnecessary time, and focusing more on business value creation and innovation. If cloud is a belief, then cloud native is an attitude, The Times call everyone should become cloud native developers.
An evolutionary path for developers
Throughout three decades of development, on the one hand, the broad masses of Chinese developers continue to play a great economic and social value, on the other hand the development of social economy is changing the whole society to create value and realize value, and continue to bring the transformation of the research and development of application software and delivery mode, so as to provide a broader space for developers, to fully release the imagination and creativity.
The composition of developers from the initial group represented by traditional developers, to the gradually rising cloud developers, and then to the growing cloud native developers. The mission of the developers themselves has also changed from the executor of enterprise informatization strategy to the enabler of digital transformation business today, and will further become the technology leader of digital innovation in the future.
Traditional developers are the executive force of enterprise informatization strategy. In the two decades between 1990 and 2010, they were often not in the spotlight for the applause and praise, but they were actually executing the business strategies of corporate decision makers. Through the development and implementation of various information system applications, traditional developers help enterprises build information infrastructure and business platform, realize the business functions required by internal users and external customers, help enterprises cope with the rapidly changing market environment, and constantly explore new business areas and new business models.
Although the digital transformation of various industries is in full swing, in fact, many industries are still based on the traditional application construction and development mode. For example, waterfall development mode, on the one hand to carry out functional design, development and testing; On the other hand, technology selection, resource preparation, component debugging, continuous construction and version deployment, etc., the whole process is long, complicated and requires a large number of development teams.
With the maturity of cloud computing technology, the traditional development mode can no longer meet the development needs of The Times, and developers begin to make use of the power of cloud platform. Cloud development can effectively ensure the modernization level of R&D and operation team, and promote the continuous improvement of R&D and operation technology capability from the platform tool level. The standardization of technical capabilities brought by cloud development greatly improves the working efficiency of developers, including the configuration efficiency of development and test environment, the software and hardware development efficiency of functional components and business systems, as well as the release and deployment efficiency of servitization, componentization and grayscale, etc.
But we also see that most of the companies that are implementing the cloud have not made a fundamental change in their application development model. In these enterprises, developers’ use of cloud computing is still limited to isolated scenarios, such as the infrastructure level or specific business applications. At the same time, the cloud platform itself in the development tool chain, integration services are not perfect, also affect the cloud development mode to be accepted by more developers.
Then, container technology represented by Docker began to rise, and K8s gradually developed. In the never-ending pursuit of performance, efficiency, portability, manageability and convenience of developers, cloud native technology came into being. Cloud native enables the development model on the cloud to have more powerful tools and new application building and innovative thinking. Of course, cloud native developers are not only embodied in the mastery and application of emerging technologies such as Docker and K8s, but also realize the masking of the complexity of underlying technologies through cloud native technology, so as to achieve better application integration and delivery, thus helping enterprises innovate. According to Forrester research, 73% of developers believe that cloud native will enable more people within the enterprise to become developers.
Cloud native drives a new era of development
Cloud native is an upgrade to cloud computing. Cloud native, which contains a large number of new PaaS layer technologies and new development concepts, is the shortest path to unlock the value of cloud computing, and also promotes the upgrading of cloud computing. The entire cloud native technology stack is based on open source and open technical standards. CNCF is also committed to standardization of cloud native technology, providing users with a standard interface for using cloud services, and avoiding vendor lock-in.
Take a closer look at applications based on cloud native technologies and cloud native architectures reconfigured or rewritten. For example, applications based on service grid or Serverless have the natural ability of horizontal expansion and can cope with the rapidly growing business scale in the Internet era at any time. Meanwhile, high availability capability is built in, so applications do not need to pay attention to the high availability scheme in distributed environment.
Cloud native is not only the re-upgrade of cloud application architecture, but also the re-upgrade of cloud platform technology and cloud services. From the perspective of building cloud native applications, the reconstruction of cloud native applications is reflected in the whole life cycle of application development.
In this process, we see some trends: container +K8s becomes technology infrastructure for example. Container decouples the application from the environment. K8s decouples resource management and infrastructure, encapsulates the infrastructure layer downward, shields the difference of underlying architecture, connects heterogeneous computing power, integrates edge and end of cloud, and builds distributed cloud. Support multiple heterogeneous workloads upward, distributed, flexible and scalable, Mesh decouples, and promotes the modern evolution of application architecture. Containers and K8s have become the distributed operating systems of the cloud computing era.
In addition to the change in development model, we also see an era of all-cloud development coming, driven by cloud native.
At the end of 2021, 68 percent of organizations will be using containers in production environments, up 39 percent from 2020 and 240 percent from two years ago. Alibaba achieved 100 percent containerization in 2016, while in 2021, 68 percent of enterprises will use containers in their production environments. What is certain is that containers have become an absolute trend.
68% of developers are willing to develop on the cloud. A large number of developers are already aware of the changes that cloud development brings, including front-end/back-end, web, mobile, applets, logic, models, components, etc. Cloud development brings productivity improvements, greatly improved efficiency, etc.
By the end of 2021, 25% of developers will be using the Serverless product. Today, Ali Cloud has begun to invest heavily in Serverless RESEARCH and development, providing functional computing FC, Serverless application engine SAE, Serverless container service ASK, Serverless infrastructure ASI, elastic container instance ECI and other products. At the same time, in the developer tools convenient, Ali open source the industry’s first Serverless developer platform — Serverless Devs, through this platform, developers can experience Serverless products with one click, rapid deployment of Serverless projects.
From the perspective of the majority of developers, on the one hand, developers can obviously feel the fluidity of cloud platform from the resource, ability to value, which brings great convenience to application development and system operation and maintenance; On the other hand, developers have been plagued by heterogeneous development techniques on and off the cloud, trivial development tools, and fragmented collaboration processes, and have been unable to fully practice their technology in the cloud.
As cloud native grows and matures, products and tools are addressing the pain points facing developers. For example, consistent encapsulation of container images enables developers to achieve application portability in different environments. The separation of code and configuration simplifies the development and testing process for developers. Serverless computing helps developers quickly get development and test clusters up and running without complex configurations; CI/CD builds deployment capabilities across the cloud, enabling development and operations personnel to ensure fast and stable iterations of complex applications in heterogeneous environments.
As a one-stop DevOps platform, Cloud Effect integrates the cloud native development mode summarized by Alibaba for many years into products, providing easy-to-use cloud native RESEARCH and development solutions for the majority of developers. Out-of-the-box cloud IDE, code management platform and CICD pipeline seamlessly integrate the whole process of development, testing and deployment with the cloud native base platform, further lowering the threshold for developers to get used to cloud native technology, speeding up the transformation of cloud native technology and greatly improving software production efficiency.
Driven by market and technological development, enterprise application and software development and construction will move to cloud native. At the same time, the maturity of cloud native development platform will in turn drive more enterprises to choose cloud native. Cloud native development mode will become the inevitable choice of enterprise application development.
Layout of open source ecology, Ali Cloud to promote full cloud development and practice
Standards and open source accelerate cloud native, and promote better implementation of all-cloud development. Today, ali Cloud has more than 2,600 + open source projects on GitHub, covering big data, cloud computing, AI, middleware, containers, Serverless and other fields, with more than 30,000 + contributors and over one million GitHub stars. Ranked first in the contribution of GitHub, an open source community for Chinese enterprises. Some of these open source projects have become de facto standards in related fields.
Dubbo has become the most influential and widely used open source micro-service framework in China. RocketMQ is the first Apache top-level project for Internet middleware in China and 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 opened last year, chaos engineering tool ChaosBlade for distributed high availability, Service registrations discovered Nacos and Serverless Devs, the first Serverless developer platform.
Facing the entire technical community, Ali Cloud returns the technical achievements of research and development for many years to the world’s top foundations, such as Open Atom Open Source Foundation, Apache Foundation, etc. Ali Cloud is committed to creating an open, standard and healthy technology ecology. A developer who wants to build an open source architecture based on cloud native technology can find his own tools in Ali Cloud ecology. Ali Cloud has served a large number of enterprise users, and is building an open standard technology system to serve global developers.
Cloud on enterprise is the trend. Alibaba took the lead in opening source its own RocketMQ in China, and became Apache’s top open source project. RocketMQ provides users with high performance, high reliability, and low latency messaging services, making it the industry’s popular choice for financial grade business messaging. With the development of cloud native technology, full cloud has become an irresistible trend. Many enterprises have deeper demands for the evolution of message-oriented middleware. We will release RocketMQ 5.0 to the community and business simultaneously, defining the new concept of “message, event, stream” integration processing. RocketMQ 5.0 will bring changes to infrastructure cloud primitives, message flow processing, and event driven.
Based on ali Cloud’s mass production practices, RocketMQ 5.0 will provide a flexible, flexible architecture for multiple scenarios to help enterprises balance resource resilience, operational complexity, and business ecosystem innovation. Second, RocketMQ 5.0 will provide a new lightweight streaming framework around high-value message data, making it easier for businesses and developers to compute and analyze messages closer to home. Finally, RocketMQ 5.0 will be based on open standards, connecting cloud services and the open source ecosystem, coupled with the Serverless development model, to provide users with the next generation of event-driven architecture services with low code and no servers.
Reference article: At last! RocketMQ release 5.0: Major architecture refactoring with 60% code changes
Cloud native was originally proposed as a starting point for resource cluster management and operation, but today there is a lack of application management if all workloads run on one set of infrastructure. Therefore, we propose to take application as the center, separate concerns, and define all development operation infrastructure, cooperation boundaries, protocols and methods, namely, KubeVela, a one-stop application management and delivery platform. In June this year, KubeVela entered CNCF Sandbox and now has more than 300,000 image downloads and more than 20 global enterprise customers. This year, OAM was approved by the Ict as an industry standard.
Today, more and more computing power and business are sinking closer to data sources and end users. As the scale and complexity increase day by day, the o&M capability in edge computing scenarios becomes overwhelmed. In order to promote the collaborative development of edge computing and cloud native field, Ali Cloud will open source the edge container service ACK@Edge core framework OpenYurt to the industry and donate CNCF. Adhering to the industry’s pioneering concept of “non-invasive”, OpenYurt has full coverage of edge computing, making it the preferred platform for ecologically compatible scenarios. Its applications have covered dozens of industries including IoT, audio and video, logistics and so on, making cloud native ubiquitous.
Cloud native allows developers to become better versions of themselves
In such a rapidly changing era, every developer and individuals who want to transform themselves into developers need to keenly grasp the pulse of the development of The Times, the changing needs of enterprise digital transformation and the trend of technological development. And more importantly, be able to see challenges outside your comfort zone and see the room for growth.
Whether you’re just starting out in your career or you’re a senior engineer on the cusp of midlife, every developer will face challenges unique to growing up, such as career challenges. Faced with the burden of high-load work and family, they can no longer compete with young graduates to stay up late and work overtime, and it is increasingly difficult to ensure the work efficiency when working overtime continuously; Want to improve their skills, but in the face of the onslaught of technology, there is no longer enough energy to distinguish between pearls and bubbles.
With the continuous standardization, automation and intelligentization of the underlying infrastructure and platform tools, under the traditional technical skill system, one’s own work is becoming more and more homogenized or even marginalized, and the anxiety of career development is increasing with age. When looking up to the outside world, but find it difficult to find their own positioning; Or when you finally find the opportunity you’re looking for, you find that your technical experience has become narrow and stale.
In the survey, 72% of respondents responded to the need to master more business and industry knowledge in a rapidly changing market environment. 70% of respondents said that as companies increasingly focus on customer experience, it is necessary for developers to master relevant knowledge of customer experience. Moreover, a variety of internal and external factors have put forward higher requirements on developers’ skills and qualities, and urgently require developers to accelerate self-transformation.
The evolution of cloud native technology has created a game-breaker for developers. Cloud native development will become the dominant mode of application development in the future and help developers differentiate their individual technology competitiveness. From container /K8s, microservice, service grid to event-driven serverless computing applications, from the management of application catalog, service catalog and mirror warehouse to the deployment of public cloud, private cloud and edge network, the constantly developing cloud native full stack technology brings developers a brand new perspective of resources, assets and architecture. Enabling developers to embrace more modern technology methods, tools and best practices to achieve vertical improvement and innovation of their own technical capabilities.
Enhance technological adaptability to achieve cross-field development. Cloud native technology, represented by container, microservice and Serverless, has made database, AI, big data, audio and video, blockchain and other technical fields continue to innovate under its influence. With K8s’ platformization capabilities, for the first time in history, developers have the opportunity to work together to achieve horizontal expansion of their technological capabilities across a variety of previously disparate emerging technology domains. In addition, developers have the opportunity to explore distributed application architecture design, development, testing, operation and maintenance. Not only broaden the technical vision, but also enrich the development experience, effectively enhance their competitiveness and adaptability.
Enhance collaboration efficiency and explore business innovation. CI/CD and DevOps practices have taken another leap forward thanks to container and cloud-native technologies like K8s. The simplification, automation and integration of application development process not only enables developers to focus on in-depth understanding of business needs and customer values, but also to meet customer needs more quickly and effectively. At the same time, business innovation is explored by solving business problems.
Cloud native makes it possible for developers to realize their vision of an all-cloud practice, but developers need to be aware that the mission of leading digital innovation in the next decade will not be accomplished overnight. Developers should take a forward-looking view to focus on the technical capability requirements of cloud native developers and focus on value realization.
Technology can drive transformation, technology can lead innovation, but technology is not the end, technology has to serve the business. In daily technical practice, developers should actively understand the specific business requirements behind the implementation of technology, be familiar with the business concepts behind the communication language of business personnel, and further explore the customer goals behind the business requirements as much as possible. Second, developers need to get rid of common stereotypes, such as that customer experience is all about beautiful interface design, that experience is all about THE UI, not the technician, and so on. Developers need to put customer value into their own technical practices.
Finally, developers need to be diligent in thinking about, for example, what are the core business problems that the technology solves? What are the operational causes of these problems? What business pain points were not considered and could be further enhanced? In this way, from the perspective of business and customers, we can promote our technical ability from the outside to the mainland. Cloud native technology not only helps enterprises to quickly implement business requirements, but also forces enterprise developers to have a business perspective, focus on business logic, and do more innovative things.
The Times call for cloud native, this is the best time for cloud native, but also the best time for developers. Let every developer become a better themselves, Ali Cloud has been on the road.
The original link
This article is the original content of Aliyun and shall not be reproduced without permission.