6 Months from Idea to Live Cloud IoT Platform in Energy Industry

checklist
  • Duration: 6 years 9 months
  • Industries: Telecom Industry; IT Industry; IoT & Geofencing
  • Services: Product Development; Backend Development; Custom Software Development; Early-Stage Innovation, R&D Services; Software Integration Services
  • Software Categories and Types: Integration Solutions; Workflow Management & Business Process Automation; SaaS Solutions; B2B Solutions
  • IT Architecture Paradigms and Approaches: Software Frameworks Development; Architectural Patterns; Reactive Programming; Event Driven Architecture
  • Technical Expertise: Research and Development (R&D); Internet of Things (IoT), Geofencing, Smart City; Data Transformation
  • DevOps Expertise: Linux Advanced; Advanced build organization; CI/CD Basics; Virtual Machines; Docker; Kubernetes; Monitoring Systems
  • Technologies: JUnit / TestNG; Docker; Git; Project Management, Collaboration and Bug Tracking; Jira; Apache Maven; CI/CD Automation Servers; IntelliJ IDEA; Kubernetes (K8s); Fabric8; gRPC; Various Utility Languages; TeamCity; Java; Scala; JVM Languages; IDE; Araxis Merge; Build and Dependency Platforms and Tools; Backend; Kaitai Struct; Various Editors; Containers and DevOps Tools; Standards and Protocols; Test Automation; Source Code Management (SCM); CI/CD and DevOps; Languages, Protocols, APIs, Network Tools; Network Tools; Software Engineering and Management Tools; WinSCP; Java Libraries; HttpWatch; SNMP; Lombok; SNMP4J
project-team
  • Team size (3):
  • 1 Project Manager
  • 1 Frontend
  • 1 DevOps

Provided services

Product Development, Backend Development, Custom Software Development, Early-Stage Innovation, R&D Services, Software Integration Services

Client

IoT data service provider, which has its own network of base stations. Unique on the regional market.

Product

The product is a cloud IoT platform for energy resources accounting and meter management, owned and operated by the client. In particular, it’s a cloud M2M (machine-to-machine) telecommunication platform and a network of base stations in different regions. Each base station receives packets from multiple metering devices via connected radio modules and transfers data to the M2M platform. The communication between the metering devices and the base stations is carried out via wireless connections using LoRa spread spectrum modulation. LoRa modulation method is used for wireless LPWAN-networks (short for Low Power Wide Area Network), which transmit data through the open energy-efficient network protocol LoRaWAN (short for Long Range Wide Area Networks)

Challenge

The client’s primary challenge was effectively managing the complex IoT infrastructure — coordinating the data flow from distributed metering devices to their central cloud platform to increase network coverage and international presence. The key pain points were to integrate the various communication protocols, manage the base station network, and ensure reliable data transmission.

Working closely with the client’s R&D team, JazzTeam’s engineers were tasked with creating an MVP (minimum viable product) for the platform’s core communication service. This required in-depth research and rapid domain expertise development by the JazzTeam team, as they built the service from scratch based on the client’s existing solutions and technical requirements.

The platform needed to include a SNMP agent to enable seamless connection to the client’s cloud telecommunication, a protocol converter to standardize the exchange of energy metering data (like water and electricity), and a module for re-requesting missing meter readings, to minimize requests to the base stations and ensure data integrity.

The project faced tight deadlines, frequent changes in MVP requirements, and technical challenges such as working with limited documentation for the SNMP4J library and implementing parsers for binary files and protocols. Additionally, there were limitations on the size of transmitted data packets.

The key challenge was to deliver all software components successfully and on time, despite the challenges, while ensuring close collaboration with the client and proactive risk mitigation.

Mule solution

Project Context

The client was actively increasing its international presence and constantly expanding its network coverage through active cooperation with equipment manufacturers, integrators, and service organizations.

Solution

To address the customer’s needs for their cloud IoT platform managing energy metering devices and meter data, JazzTeam developed several key components:

  • SNMP agent: JazzTeam implemented an SNMP agent that enables connection to the client’s cloud M2M telecommunication platform. The agent supports obtaining and setting dynamic parameters of IoT devices via gRPC, with all commands described in a MIB file. Logging to various sources was also added, and the agent was incorporated into the client’s deployment system as a Docker container.
  • Protocol converter: A protocol converter was developed to enable standardized exchange of energy meter data (water and electricity) with external applications. It converts messages between the client’s internal standard and the M-BUS protocol used by external systems. Parsers for both standards were created using Kaitai, with unit tests covering the converter’s functionality.
  • Module for re-requesting missing meter readings: This module receives reading requests from external systems, checks the database, and generates requests to obtain missing readings from the metering devices. It is designed to minimize requests to the base stations, determining whether to request one-time readings or a date range.

Testimonial

Viacheslav Shirikov
Viacheslav Shirikov
Chief Technology Officer & Co-Founder at Lartech telecom

"Lartech Telecom expresses its gratitude to JazzTeam for the cooperation and recommends JazzTeam's engineers as highly qualified.

We would like to note that the team took a proactive approach and was results-oriented from the very first days of the project. The team's immersion in a new subject area did not cause any difficulties and was promptly done.

Agile methodologies practices, such as daily Scrum meetings, weekly sprints and the results presentation, were implemented in the project from the very beginning. This allowed us to keep all communications at a high level, to focus on the outcome, to respond timely to challenges and changes in external circumstances, to get over pitfalls and to adjust plans and processes.

All the works were completed in full compliance with the requirements and within the specified timeframe.

We wish JazzTeam success in its professional activities."

Result

By closely collaborating with the client and leveraging their technical expertise, JazzTeam was able to rapidly deliver this innovative IoT solution tailored to the specific needs of the client.

Despite the technical complexity and minor hurdles, the team successfully delivered all components in record time, even detecting and fixing critical bugs in the Kaitai library, leaving the client highly satisfied with the final software product and the quality of services.

In just six months, JazzTeam tackled highly complex technical challenges and research-oriented tasks without faltering, all while staying within the project’s budget. Our team established stable, well-oiled processes that kept the project free of surprises. And also helped to stabilize and streamline the customer’s own internal processes in certain areas. JazzTeam specialists worked closely with the client’s team at all stages, informing them of risks in a timely manner. Finally, we identified and mitigated the negative consequences of using a NoSQL database, ensuring data integrity in the system.

Technologies

Programming languages: Java 8, SNMP4J, Scala, Kaitai.

Infrastructure: Maven, Docker, Fabric8, TeamCity, Git, IntelliJ IDEA, Jira.

Test libraries: Junit 4.

Other libraries: Lombok.

Protocols: gRPC, SNMP.

Related projects

Recent Work

    Contact Us

    What happens next?
    • 1

      Leave your project request. We will contact you and schedule a call.

    • 2

      Signing of the NDA to ensure the project info confidentiality.

    • 3

      Negotiation of your request and the required services.

    • 4

      Team forming, coordination of workstages.

    • 5

      Contract signing and project start.