Job Title: Developer with Functional Programming Expertise
We are looking for a highly skilled developer who possesses a robust background in functional programming and distributed data processing. In this role, you will design, implement, and optimize scalable systems that utilize functional paradigms, concurrent processing, and modern runtime architectures.
Key Responsibilities
- Develop and maintain high-performance, reliable, and distributed applications using functional programming principles.
- Utilize Spark in DataBricks to ensure resilience and elasticity in large-scale deployments.
- Build and optimize data-intensive workflows using Apache Spark or comparable frameworks.
- Apply solid knowledge of runtime environments, execution contexts, and pure functional design to deliver predictable, testable software.
- Collaborate with teams to design architectural solutions based on a sound understanding of distributed and parallel data transformation.
- Write efficient, maintainable code in Python.
Must-Have Qualifications
- Strong hands-on experience in functional programming with one or more paradigms:
- ETL pipelines
- Actor model systems (e.g., Akka, Apache Pekko)
- Category theory–based systems
- Map-reduce frameworks
- Real-world experience with Apache Spark (most important) or similar libraries and technologies (e.g., Apache Flink, Cats/Cats Effect, Hadoop, Kafka Streams).
- Solid understanding of runtime systems, execution contexts, and pure functions.
- Deep understanding of compiled, JIT, and interpreted execution models.
- Proficiency in Python and in one of Scala/Java, C/C++, or Rust.
Nice to Have
- Experience applying functional programming principles in Python.
- Experience designing and maintaining ETL pipelines.
- Familiarity with Databricks, Delta Live Tables (DLT), or Delta Sharing.
- Exposure to Power BI or other BI tools.
- Understanding of projective programming concepts and graph query models.
- Background working in Linux and Azure environments.
- Additional experience with Scala, TypeScript, C++, Rust, Haskell, or SQL.
Apply online using the form below. Please note that only applications matching the job profile will be considered.