- Work model
- Office
- Experience
- 5+ years
- Employment
- Not specified
- Compensation
- Not disclosed
- Technology signal
- 10 tags
Technology context
10Parsed from the vacancy text; ordered by relevance to this role.
Full listing
Role description
Job Description
Our EBMS Real-Time Data Platform team is looking for a Software Development Engineer with hands-on experience in Apache Flink , Amazon Kinesis , and Java to build and maintain our real-time BMS data pipeline that ingests telemetry from thousands of global building management systems. The engineer will be responsible for the full lifecycle of stream-processing applications; from design and development through deployment and production operations with a focus on delivering 99% system uptime, comprehensive observability, and fault-tolerant architecture.
Primary Responsibilities
- Design, develop, and optimize Apache Flink stream-processing applications for real- time BMS data ingestion, transformation, and enrichment.
- Build and maintain Amazon Kinesis Data Streams infrastructure including shard management, auto-scaling policies, and dead-letter queues.
- Implement comprehensive observability: CloudWatch/Grafana dashboards, distributed tracing, structured logging, and tiered alerting (P1/P2/P3) across the full pipeline.
- Troubleshoot and resolve production issues across the ingestion-to-serving stack (Kinesis, Flink, DynamoDB, S3, Athena)
- Develop and maintain Infrastructure-as-Code (CDK/CloudFormation) for all pipeline components, ensuring repeatable and auditable deployments.
- Implement data quality monitoring including record count validation, schema drift detection, and null-rate anomaly detection across all sites.
Job Qualifications
The ideal candidate has strong software engineering fundamentals and a passion for building reliable, high-throughput distributed systems. They must be detail-oriented,comfortable operating in an on-call environment, and able to communicate effectively with both technical and non-technical stakeholders.
Required
- Bachelor's or Master's degree in Computer Science, Software Engineering, or equivalent technical field.
- Strong proficiency in Java (primary) with production-level experience building and deploying applications.
- Hands-on experience with Apache Flink or equivalent stream-processing framework (Spark Streaming, Kafka Streams).
- Experience with Amazon Kinesis Data Streams or similar distributedmessaging/streaming platform.
- Demonstrated experience building and operating systems with 99%+ uptime SLAs.
- Solid understanding of distributed systems concepts: fault tolerance, exactly-once semantics, checkpointing, backpressure management.
- Experience with AWS services: DynamoDB, S3, Athena, CloudWatch, IAM.
- Proficiency with Infrastructure-as-Code (CDK, CloudFormation, or Terraform).
Preferred
- Experience with MQTT, Haystack protocol, or Niagara N4 (building automation / IoT).
- Familiarity with Apache Avro, AWS Glue Schema Registry, or similar schema management tools.
- Experience with Grafana, CloudWatch Logs Insights, or distributed tracing frameworks.
- Knowledge of chaos engineering practices and tools.
- Prior experience with BMS (Building Management System) or IoT data pipelines.
- Python proficiency for scripting, data analysis, and tooling.