ORIGINAL COMPANY-CONTEXT PRACTICE
Evolve a device telemetry protocol
Original practice scenario inspired by Siemens Aktiengesellschaft's public business context; this is not a reported interview question or a description of its internal systems. A fictional industrial device fleet includes old firmware that cannot update immediately. A new telemetry message adds optional units and a quality flag. Describe a parser and rollout strategy that keeps old data understandable.
Written for independent practice using company context; this is not a verified question from a company interview.
A REASONED APPROACH
Model answer.
Version the message meaning as well as its bytes. Optional fields need documented defaults that preserve the interpretation of old messages, especially when measurement units and quality affect downstream decisions.
Work through it
- Define required identifiers, sequence numbers, supported versions, and unknown-field behavior. Reject malformed values with explicit diagnostics rather than guessing units.
- Add fixtures from each supported firmware generation and test missing optional fields, reordered fields, duplicate messages, and unsupported versions.
- Deploy readers before writers when possible, monitor rejected-version counts, and retain raw messages with parser version for replay. Use an explicit migration for incompatible semantics.
Tradeoffs to discuss
- Tolerant parsing helps forward compatibility but can hide producer defects. Distinguish harmless extra fields from changes that alter measurement interpretation.
Common pitfalls
- A numeric field without units may be ambiguous.
- Treating missing quality as good can make old or incomplete measurements appear validated.