• Company
    • Profile
    • Products & services
    • Innovations
    • Our values
    • History
    • Corporate Governance
      • Overview

        Our Corporate Governance Report contains the information required by the Directive on Information Relating to Corporate Governance issued by the SIX Swiss Exchange.

      • Board of Directors

        Find out more about the Board of Directors of the Schindler Group.

      • Board Committees

        The Board of Directors delegates certain duties to committees formed from its own members. It has appointed four standing committees.

      • Group Executive Committee

        Meet the Members of Group Executive Committee of the Schindler Group.

      • Organizational regulations

        The Organizational Regulations of the Schindler Group are based on articles 716, 716a and 716b of the Swiss Code of Obligations and the Articles of Association of Schindler Holding Ltd.

      • Articles of Association

        Read the current binding German version of the Articles of Association of Schindler Holding Ltd., as well as the English translation.

    • Suppliers
      • Overview

        Our Strategic Sourcing Organization works closely with our regional sourcing organizations to deliver competitive, innovative, and sustainable supply solutions for Schindler globally.

      • Global organization

        Our global purchasing organization is managed by a network of category and country teams, who work closely together to achieve maximum results.

      • Spend categories

        The Category structure defines the global material and service categories supplying the Schindler Group and drives the management of the spend and the supply base.

  • Responsibility
    • Overview
    • Our Sustainability Roadmap
    • Environment
      • Climate

        We are continually searching for innovative ways to reduce the carbon intensity of our vehicle fleet. And, by increasing the use of remote monitoring and adaptive servicing of our products, we are further reducing the need to travel.

      • Environmental management at our sites

        We are continuously looking for ways to do more to tackle climate change through minimizing our environmental impact at our sites.

    • People
      • Inclusion & Diversity

        Our global presence gives us access to the full spectrum of human diversity – reinforcing our ability to adapt and innovate.

      • Safety

        Every day, we move more than 2 billion passengers, who rely on our products to get around – that means the safety and reliability of our products are critical.

      • Communities

        We make a positive contribution to communities through our targeted Responsibility initiatives.

    • Value chain
      • Product sustainability

        Quality and innovation guide our investments to improve the environmental performance of our products.

      • Pioneer smart urban mobility

        We pioneer smart mobility with our ideas & solutions, keeping an ever-growing urban world easily accessible and making each trip safe, efficient, and secure.

      • Supply Chain engagement

        We are committed to increase sustainability and environmental awareness in our supply chain while maintaining high standards of safety & quality.

      • Cyber resilient across the organization

        Information security is not the exclusive domain of our IT department – we want it to be everyone’s business. Building our cyber resilience is part of our corporate risk management approach and an ongoing effort.

    • Ethics and compliance
      • Overview

        All Schindler employees commit themselves to observe the highest ethical standards of professional and personal conduct in their interactions with …

      • Educate

        In the Educate stage of the Compliance Program activities & processes are implemented which are designed to avoid compliance violations before they occur.

      • Examine

        In the Examine stage of the Compliance Program processes to detect hints of possible violations ("Red Flags") are implemented.

      • Enforce

        In the Enforce stage of the Compliance Program suspicions of violations are investigated, corrective actions taken and the responsible employees sanctioned.

    • Policies and reports
  • Investors
    • Overview
    • Share information
      • Overview

        Schindler registered shares & participation certificates are traded on the Swiss stock exchange since November 1, 1971.

      • Share price charts

        Data is delayed by at least 15 minutes. All quotes are in local exchange time.

      • Share capital structure

        Learn more about our capital structure and shareholders

      • Dividends

        Schindler's dividend policy is earnings-related and provides for a payout ratio of 50% to 80% of net profit attributable to shareholders of Schindler Holding Ltd.

      • Coverage and consensus

        Schindler is covered by various analysts. Their views, forecasts, and expectations may not necessarily reflect those of the company.

      • Share buyback program

        Please find the reporting on Schindler buyback program of registered shares and participation certificates.

    • Results
      • Overview

        Schindler reports on its financial performance on a quarterly basis.

      • Archive

        Schindler reports on its financial performance on a quarterly basis. The documents in the reporting archive are available online only. For an overview click the corresponding year.

      • Non-GAAP measures

        We include certain non-GAAP measures in our Group Review comprise, which are not accounting measures as defined by IFRS.

    • Financial calendar
    • Events
    • General meetings
    • Investor Relations contact
  • Careers
    • Overview
    • Who we are
      • Overview

        Together, we're building the future, keeping the world moving, and making our communities accessible and sustainable.

      • Our values

        Our values are the foundation of everything we do and allow us to remain a leading global player in the elevator and escalator industry.

      • Inclusion and diversity

        By building inclusive and diverse teams, we are laying the foundation for creativity, innovation, and effective decision-making.

    • Why Schindler
    • Work and grow at Schindler
      • Compensation and benefits

        Discover more about Schindler employee compensation packages and benefits – and why competitive salaries are just the start.

      • Professional development

        The key to maintaining our proud legacy of Swiss precision engineering, attention to detail, and quality is making sure that all our people – at every level – are trained and ready.

      • Leadership growth

        We strongly believe in fostering a corporate culture of continuous development and providing a platform where our employees can grow.

      • Career development

        We prioritize career development, offering tailored paths for growth and advancement. Explore diverse roles, acquire new skills, and seize opportunities for progression within our global organization.

      • International careers

        International assignments are a key part of how we develop our people. Grow your career internationally with Schindler.

      • Work-life balance

        Finding the right balance between work and life can be tough. We make it easier through flexible modern policies designed to meet diverse needs.

    • Who we look for
      • Students and graduates

        Discover our wide range of apprenticeship, graduate, and internship opportunities that will launch your career and support your professional growth.

      • Experienced professionals

        Explore our open opportunities across various business functions, from engineering, IT, sales, and marketing, to communications, finance, quality management and HR, and embark on a thriving career with us.​

    • Open positions
  • Newsroom
  • Contact
Schindler worldwide

We elevate the separation of concerns

Modules purpose in transportation industry.


In today’s engineering world, the concept of modularization has many advantages. You have more freedom to change things when they break, they are easier to move or modify, they are easier to transport and, most importantly, you need to know less to handle them because they don’t have the complexity that a complete system would have. This is true for both hardware and software.

But this freedom comes at a cost.

Whenever we build a new module, we need to document and inform the components that talk with this new module about what its inputs and outputs are, and what kind of language it uses to communicate with the outer world.

Imagine it like a rendez-vous, where two spacecraft that have never met need to connect. Docking is possible only if the interfaces that the spacecraft expose are compatible. 

In this article, you are going to see how we handle this modularization, its documentation, and its implementation from a software point of view. 

The rendez-vous

The first challenge that we need to consider is documentation.

Because different teams build different components, we have to create documents that tell them how they can interact with certain components. This way, they don’t need to know how it works, they only need to know what parameters it needs and what it’s going to produce as outputs. 

As you read in a previous article [1], one way of documenting could happen via Swagger but, even though Swagger is very useful to document web API and its endpoints, we need something that is more agnostic, so it can be used for different ways of communication, like message queuing. 

HTTP APIs and queues are the main communication protocols that we use.

With HTTP, you can handle actions synchronously and data management on the web, like queries against a database.

Via queues, you are free to send information asynchronously between different components, so you don’t need to wait for their response.

Consider if you needed to log the information observed by a position indicator that measures the height of the elevator every 100ms.

The best way to handle this scenario would be by being able to send this data whenever you could. Then, the only thing that the software that retrieves data has to do is to send that information to an address, and then it can forget about it. 

Since each software component is separate from the others, you will have to create an interface specific for each. 

In the example above, there are events (like the indicator that detects a change in the height) that come from different applications located in different boards that send data to an Event Collector application located in a Control Board. 

How do you document what the Event Collector accepts as input? 

To solve this documentation challenge, we use interfaces written in YAML. YAML is a language, like JSON, that has a dictionary structure (key, value pair). One big advantage of YAML over JSON is being able to create anchors, useful to create more complex object definitions. This is the documentation of the IF-A.

In the "types" section, we document the type that the events can contain.

In the "messages" section, we define the structure of a message. In the example here, it says that there is an object EventMessageType that contains the name of the sender (like Position Indicator Board) and an array of bytes that contains the information.

It’s not recommended to use an int or a float for the data because the IF-A purpose is to accept all the possible events, even from other boards.

Even though now we are only sending a height inside the "data", we want the possibility to accept other information of different types from other boards, like dates or error messages. Because this information can vary – a lot – we also need to be sure to add other details inside the data object that help us decode the meaning of the single data.

After documentation, the remaining thing to do is to implement the interfaces.

A possible way to do that is to convert the YAML into a proto message [2] and then implement the message in both the sender (that will populate the object thanks to the structure given by the proto) and the receiver (so it will be able to read it). 

Like the YAML, choosing protobuf messages has the advantage that they are technology agnostic, so we don’t need to write them in different ways depending on the language and they are ready to use. 

This will be the protobuf implementation, present in both the Event Collector and the Position Indicator Software.

After the docking

Even though the modularization of components comes with an upfront cost of defining standards and protocols, the benefits are well worth the effort.

In this way, engineers don’t need to work on a monolithic system, but can focus on only those components they need to change. The only thing they need to do is respect contracts between modules.

What we get in the end is hardware that is upgradable and software that is updatable. The only thing we need to do is to dock another compatible piece without the worry of potentially compromising the entire structure.

About the author

Find out more about Stefano on his LinkedIn page: https://www.linkedin.com/in/imsn/