About This Role
The team is building our cloud-native data pipeline that ingests massive amounts of distributed data coming from our Cloud services. The project aims to provide a unified, high-throughput, low-latency platform for handling real-time data feeds to power observability and analytical applications used by internal OutSystems employees and our customers.
Key Responsibilities
Work with Product Engineering teams to turn internal and product requirements into sustainable solutions that enable efficient software engineering and system visibility for our clients
Develop tools and infrastructure to collect, distribute, and store logs, traces, metrics, and more from all OutSystems services and products while ensuring that your solutions are optimized for ease-of-use, reusability, and scalability
Stay up-to-date on technologies relevant to the role, identifying trends and opportunities to ensure OutSystems continues to use the best possible techniques and tools to create software
Work with cross-functional development teams.
Qualifications
Bachelor or Master's Degree in Software Engineering, Computer Science, or similar. If you do not have one but you have equivalent real-world experience (and can show it), we still want to hear from you
4-7 years of data engineering applications on a large-scale distributed computing infrastructure in a cloud environment
Knowledge of and experience with designing and building a highly scalable data platform for ingesting, processing, storing, and forwarding large amounts of data
Experience in building real-time streaming framework using Kafka Streams, Apache Spark, Apache Flink, etc
Knowledge of and experience scaling one or more of the popular data processing and distributed computing.
Experience with relational SQL ,NoSQL databases and Data Modeling
Knowledge of designing and building data lakes that can be used to power analytics, artificial intelligence, and business intelligence reports
Knowledge of and experience designing and developing high throughput APIs
Knowledge and hands-on experience with modern infrastructure practices, like Infrastructure as Code, immutable infrastructure, service oriented architectures, etc
Knowledge and experience with code-based configuration, load-balancing, auto-scaling, monitoring, networking, and problem-solving in a cloud environment
Technical leadership and knowledge to provide technical guidance and educate team members and coworkers on development and operations
Strong experience working with modern object oriented, Functional programming languages (Java, Python, Scala, C#, Go, Node)
Experience working with application frameworks such as Spring Boot
Experience working with Agile methodologies, Test Driven Development and implementing CI / CD pipelines
Good communication skills (Fluency in English, written and spoken)
Senior Software Engineer • Bengaluru, Karnataka, India