A Glimpse into The Future of Front-End Engineering
    2018-02-27    Yu Shengjie(郁盛杰)

 

How will the role of front-end engineers develop as technology evolves? Viewpoints from Alibaba engineers.

 

Front-end engineers are programmers first and software engineers second, fusing what people see, access and interact with to create an ideal user experience.

 

Today, programming follows a division of labor production process that divides large tasks into multiple small tasks. With each task assigned to a different person, it enables each person to specialize and develop in their specific field. However, while this process lays the foundations for programmers to concentrate on various aspects of front end web development, to increase productivity further diversification and integration are needed, and these developments will undoubtedly change the responsibilities of front-end engineers.

The following figure shows the history of software development and the evolution of the front end since 1995.

 

 

Further Diversification

Looking ahead, the fields, industries, and technologies involved at the front end of web development will continue to diversify.

At Alibaba, for instance, the front end is currently separated into the following five departments, all of which are divided into further specialized teams.

  • Background support: cloud consoles, information and asset management platforms, etc. Products include the Alibaba Cloud console and DeepInsight.
  • Graphics: a basic graphics library, 3D graphics, and data visualization. Products include G2 and DataV.
  • Terminals: mobile and computer terminals, touch-screen computers, and smart devices. Products include the Taobao Alipay app.
  • Nodes: tool chains, web frameworks, and IoT. Products include DEF/Atool/F2E-Test, Alibaba’s front-end developer tools.
  • Developer services: application development, component markets, and platform O&M. Products include Alibaba Cloud’s application development platform Boat and the Fusion-Design components market.

 

Key industries include traditional B2B industries, such as information management, finance, construction, aerospace and manufacturing. Also expanding are new industries, as personified by Alibaba’s “Five New” strategy, which includes New Retail, New Manufacturing, New Finance, New Energy, and New Technology (which involves new technologies enabling traditional industries), as well as SaaS platforms and products, such as Teambition, Trello and Alibaba’s enterprise chat app DingTalk.

B2C industries are also key, including mobile apps, such as WeChat and Weibo, PC desktop applications, and product websites, as well as technology stacks, namely React (Native), Angular (NativeScript), and Vue (Weex).

 

 

Further Integration

While specialized areas at the front end are being fostered, other areas are seeing further integration, most notably terminal technology, full stack web development, and AI technology.

Terminal technology

 The fusion of ideas between front-end and client-side technologies:

  • Components (component building page)
  • Component lifecycle hook functions (such as iOS ViewController)
  • MV* (such as the MVVM design, which originated from the Microsoft client development framework)

 

  • The unification of the front-end:
  • Virtual DOM: React / ReactNative / ReactCanvas
  • Unification of various mobile device cores and engines: WebKit / V8
  • Unification of technical documentation: MDN Web Docs

 

Full stack web development

The fusion of front-end and back-end technologies:

  • MV* (such as Backbone.js, the first MVC framework at the front end, from the developers of Ruby on Rails)
  • AOP, dependency injection (Angular)
  • GraphQL (SQL)
  • IndexedDB (Database)

 

AI and terminal technology

Integration of AI with front-end technology

  • Terminal here refers to the node that reaches the end user
  • Data acquisition ® back-end machine learning, data analysis ® smart recommendation presented

Integration of IoT with front-end technology

  • Smart homes / cars / industrial equipment may have screens and could be simultaneously to use Node.js to develop network applications with JS execution engines (such as JerryScript).

 

The Future of the Front End

It is perhaps worth noting that, due to the nature of operating systems, algorithms, and data structures, and due to the invariable desire for the front end to be both legible and esthetically pleasing, the essentials of front-end web development are not about to undergo a radical transformation.

But change is inevitable. In many ways, the future of the front end is mobile. Today we use our smartphones to shop, bank, read the news and watch videos far more than we do to merely communicate. But some, particularly small-scale developers, are being squeezed out as corporate giants take over, making it much harder for them to find their footing in the mobile app market.

Meanwhile, interface-free interactions are expanding, as the quality of voice and facial recognition technologies continues to improve. Interface-less IoT devices, which have their own communication protocols and specifications, will also have much of their front-end work take place out-of-sight in the back end.

Nonetheless, whether it is complex applications slowly evolving from desktop to web, including day-to-day office software and big data and AI software, or games, containers, DSLs, and product websites, front-end engineers will always be in high demand.

(Original article by Yu Shengjie郁盛杰)

 .      .      .

Alibaba Tech
First hand, detailed, and in-depth information about Alibaba’s latest technology → Search “Alibaba Tech” on Facebook