Sobes.tech
Middle — Senior

Design of the client-side architecture for logging user scenarios (mobile)

livecode

Task condition

Develop a high-level structure for a mobile client responsible for collecting and transmitting user scenario logs. It should include the following components:

  • Metadata collection: user identifier, application version, device information;
  • Event descriptions: opened screens, server requests, incoming and outgoing data, execution results, errors encountered, timestamps;
  • Local caching with expiration policy;
  • Manual and automatic log upload mechanisms;
  • Ability to retrieve logs upon server request;
  • Definition of the format and volume of transmitted data.

Server contract: a serialized JSON log file containing events related to the user, time, screen, and application version.