Job Summary:
We are seeking an experienced Senior Java Engineer, Analytics with a strong focus on Streaming to join our team. As a Senior Engineer, you will play a key role in designing, building, and maintaining our real-time analytics infrastructure. You will work closely with our data scientists, product managers, and other engineers to develop and deploy scalable, efficient, and reliable data pipelines.
Requirements:
- Bachelor's degree in Computer Science or a related field
- 7+ years of experience in software engineering, with a focus on streaming data pipelines and analytics
- Strong programming skills in Java.
- Experience with a public cloud provider, with a focus on GCP
- Strong experience with messaging/stream processing systems such as Google Cloud Pub/Sub, and Google Cloud DataFlow
- Experience with data warehousing and data lake technologies
- Strong understanding of data modeling, data governance, and data security
- Excellent problem-solving skills, with the ability to work independently and collaboratively
- Excellent communication skills, with the ability to explain complex technical concepts to non-technical stakeholders
- Experience with machine learning and data science technologies is a plus
- Certification in GCP is a plus
Responsibilities:
- Design, build, and maintain large-scale streaming data pipelines using technologies such as Apache Beam, Apache Kafka, Apache Kinesis, Google Cloud Pub/Sub, and Google Cloud DataFlow
- Develop and implement streaming data processing jobs using programming languages like Java or Python. (Experience with both is a plus)
- Work with data scientists and product managers to develop and deploy real-time analytics applications
- Collaborate with other engineers to integrate streaming data pipelines with our data warehouse and data lake
- Work with public cloud providers such as Google Cloud Platform (GCP), Amazon Web Services (AWS), or Microsoft Azure
- Monitor and troubleshoot streaming pipelines to ensure high availability and performance.
- Implement DevOps principles and practices to ensure efficient and reliable deployment of batch processing systems
- Knowledge of containerization technologies such as Docker and Kubernetes