Responsibilities:
- Architect and implement high-performance, low-latency event-driven systems for real-time applications, with a focus on scalability and fault tolerance.
- Design and optimize distributed architectures for complex event processing, ensuring sub-millisecond response times and high throughput.
- Lead the development of scalable microservices, integrating event sourcing and other patterns for data consistency and system resilience.
- Optimize runtime performance, including memory management, concurrency, and I/O operations, to meet stringent performance requirements.
- Design polyglot persistence solutions, balancing SQL and NoSQL technologies for efficient data storage and retrieval in high-volume environments.
- Implement real-time analytics and reporting systems, focusing on meaningful insights for business stakeholders and operational teams.
- Architect and develop machine learning pipelines for predictive algorithms, integrating them into real-time data flows.
- Design multi-region, globally distributed systems that ensure data consistency and low latency across geographies.
- Develop advanced monitoring, alerting, and observability solutions focusing on key performance indicators and business metrics.
- Architect data lake and data warehouse solutions for large-scale analytics on historical data, balancing performance, and cost-effectiveness.
- Lead the design and implementation of Infrastructure as Code practices, ensuring consistent and repeatable deployments across environments.
- Implement and optimize container orchestration strategies, ensuring efficient resource utilization and auto-scaling based on demand.
- Design and implement robust data governance and compliance solutions, addressing regulatory requirements in data-intensive systems.
- Develop advanced caching and data access strategies to minimize latency and improve system responsiveness.
- Conduct system design reviews and performance audits, providing actionable recommendations for improving scalability and efficiency.
Requirements:
- Degree in Computer Science or related field, with 10+ years of software development experience, including 3+ years in architect-level roles.
- Strong command over at least one of Java, Python, or Go, with the ability to write high-performance, production-grade code.
- Proven expertise in designing and implementing large-scale, distributed event-driven systems with a focus on high performance and low latency.
- Extensive experience with real-time data processing, streaming architectures, and microservices design patterns.
- Strong background in database technologies (both SQL and NoSQL) and data modeling for high-volume, real-time applications.
- Demonstrated ability to architect and optimize globally distributed systems, including multi-region deployments and data consistency strategies.
- Proficiency in cloud technologies (such as AWS, Azure, or GCP) and experience with Big Data technologies (e.g., Hadoop ecosystem, Spark, Kafka).