Who we are
Alef Education began with a bold idea : that every learner deserves a personalised and meaningful education experience. What started in 2016 as a small pilot programme in Abu Dhabi has evolved into one of the world’s most dynamic EdTech companies—reshaping how millions of students engage with learning across the globe.
Today, Alef is proudly headquartered in the UAE, working hand-in-hand with ministries of education, schools, and teachers to bring smart, data-powered platforms into classrooms in over 14,000 schools.
Supporting over 1.1 million students and 50,000 teachers across the UAE, Indonesia & Morocco our AI-driven platforms generate 16+ million data points every day, helping drive smarter learning decisions. Whether it’s improving national exam results, boosting classroom engagement, or supporting educators with world-class tools, Alef is committed to impact at scale.
In 2024, Alef made history as the first EdTech company to list on the Abu Dhabi Securities Exchange (ADX), cementing our role as a regional innovator with global reach.
About The Role
As an ALEF Big Data Engineer you will have a strong understanding of big data technologies with an exceptional ability to code. You will provide technical leadership, working closely with the wider team to ensure high quality code is delivered in line with the project goals and delivery cycles. You will work closely with other teams to deliver rapid prototypes as well as production code for which you will ensure high accessibility standards are upheld. We expect familiarity with modern frameworks and languages, as well as working practices such as Clean Code, TDD, BDD, continuous integration, continuous delivery, and DevOps.
Key Responsibilities
Defining and developing services and solutions
- Define, design, and develop services and solutions around large data ingestion, storage, and management such as withRDBMS, No SQL DBs, Log Files, Events.
- Define, design, and run robust data pipelines / batch jobs in a production environment.
- Architecting highly scalable, highly concurrent, and low latency systems
Maintain, support, and enhance current systems.
Contribute to paying down technical debt and use development approaches that minimize the growth of new technical debt.Contribute feedback to improve the quality, readability, and testability of the code base within your team.Mentor and train other developers in a non-line management capacity.Build tools (One of SBT, Gradle, Maven).Ensure all software built is robust and scalable.Collaborating with Internal and external stakeholders
Participating in sprint planning to work with developers and project teams to ensure projects are deployable and monitorable from the outside.Work with third-party and other internal providers to support a variety of integrations.As part of the team, you may be expected to participate in some of the 2nd line in-house support and Out-of-Hours support rotas.Proactively advise on best practices.To Be The Right Fit, You'll Need
Degree in Computer Science, Software Engineering or related preferredMinimum of 5 years experience in a Big DataFollow Clean Code / Solid principlesAdhere and use TDD / BDD.Outstanding ability to develop efficient, readable, highly optimized / maintainable and clear code.Highly Proficient in either Functional Java or Scala, PythonKnowledge of Azure Big Data / Analytics services – ADLS (Azure Data Lake Storage), HDInsight, Azure Data Factory, Azure Synapse Analytics, Azure Fabric, Azure Event Hubs, Azure Stream Analytics, Azure DatabricksExperience of Storing Data in systems such as Hadoop HDFS, ADLS, Event HubsExperience of designing, setting up and running big data tech stacks such as Hadoop, Azure Databricks, Spark and distributed datastores such as Cassandra, DocumentDBs, MongoDB, Event HubsIn-depth knowledge of Hadoop technology ecosystem – HDFS, Spark, Hive, HBase, Event Hubs, Flume, Sqoop, Oozie, SPARK, Avro, ParquetExperience debugging a complex multi-server service.In depth knowledge and experience in IaaS / PaaS solutions (eg AWS Infrastructure hosting and managed services)Familiarity with network protocols - TCP / IP, HTTP, SSL, etc.Knowledge of relational and non-relational database systemsUnderstanding continuous integration and delivery.Mocking (any of the following Mockito, ScalaTest Spock, Jasmine, Mocha).IDE Intellij or Eclipse.Build tools (One of SBT, Gradle, Maven).Ensure all software built is robust and scalable.An ability to communicate technical concepts to a non-technical audience.Working knowledge of unix-like operating systems such as Linux and / or Mac OS X.Knowledge of the git version control system.Ability to quickly research and learn new programming tools and techniques.