Job Description
Job Description
The position is oriented to the development and maintenance of backend services within a complex platform that integrates multiple communication protocols, data systems and automation tools. The position participates in the technical design, functionality architecture and support of deployed services, collaborating with frontend, QA and product teams.
Responsibilities:
Develop and maintain connectivity services that support multiple protocols: MQTT, OPC, REST, Kafka and others.
Implement and manage OPC UA Server functionality.
Ensure reliable ingestion of data from various sources and systems.
Transform data from any format to the platform's native format.
Manage data calculations, unit conversions, and calculation chaining.
Develop data analysis and alerting subsystems.
Build and maintain historical data and trend subsystems.
Develop runners for user-defined Python scripts and SQL queries.
Build and maintain services that manage and execute user-defined workflows and rule chains.
Allow customization and extensibility through scripting capabilities.
Develop and maintain email notification infrastructure.
Implement multiple messaging services such as Slack, Google Chat, SMS and others.
Ensure reliable and timely delivery of notifications through different channels.
Develop and maintain authentication services.
Implement second-factor security measures such as TOTP (Time-based One-Time Password) and other security mechanisms.
Guarantee the security of the platform and the protection of user data.
Participate in architectural decisions together with the development team.
Contribute to the design of functionalities and technical planning.
Lead the technical design of functionalities.
Provide support to deployed services and perform incident resolution tasks.
Collaborate with frontend, QA and product teams in the development of features.
Requirements:
More than 5 years of experience in backend development using the Go programming language.
Experience building complex platforms based on multiple services.
Problem solving and system design skills.
Experience with IoT, industrial systems, or data-intensive applications.
Ability to work autonomously and take responsibility for entire subsystems.
Collaboration and communication skills.
Experience working across the entire backend.
Interest in clean code, testing and maintainable architectures.
Salary to receive
To agree