Backend Developer (Elixir) in Barcelona or Remote

Moodle

Est. Salary
20,000 - €45,000
Workplace
Remote
Hours
Part-Time
Internship
No
Share offer

Job Description

Moodle with us

Perhaps you've heard of Moodle - we make the world's most popular learning platform and we are on a mission to empower educators to improve our world. As part of our mission we have an exciting project to build and develop a new open social media platform for educators, called MoodleNet... and we have a unique opportunity for a Backend Developer to work on building out the decentralised backend for the platform.

About Your New Project And Team

MoodleNet will be a key building block in the Moodle ecosystem, and part of the award-winning international open-source software project. With almost 2 million registered users on the moodle.org forums, and over 130 million known users of the Moodle educational software, we envisage MoodleNet as a platform that will quickly scale and be used globally.

Our team is mostly based in Perth, Australia and Barcelona, Spain. But we have colleagues all over the world too - Belgium, England, Ireland, The Netherlands, Canada, USA, Italy, The Czech Republic and France.

We are a hard working team because we believe in our mission to empower educators to improve our world. When you join us, you will hear stories how we are doing exactly that.

Finally, we really value our peers, and a caring, respectful, open and innovative workplace.

Find out more about Moodle and MoodleNet.

Benefits

What's in it for you?

Besides the obvious that we've mentioned - a workplace where we really value our peers, and a caring, respectful, open and innovative workplace - what about
  • a workplace where you have the unique opportunity to build and shape a global open source software project
  • a competitive salary
  • a truly flexible work-life blend approach - we are open to working remotely from home or out of our Barcelona office with flexible hours
  • an environment where you can bring your whole self to work
  • the knowledge you are helping millions of people reach their goals

Moodle is committed to equal employment opportunities regardless of race, color, ancestry, religion, sex, gender identity, national origin, sexual orientation, age, citizenship, marital status, medical conditions, genetic information, or disability.

Desired Skills and Experience

What Your New Job Can Look Like...

In this 6 month contract role you will be a backend developer who will use the Phoenix Framework (based on Elixir and Erlang) to build the backend for MoodleNet's decentralised platform featuring ActivityPub-based federation and GraphQL API.

You will work on implementing features based on a technical roadmap and issue tracker, collaborate closely with MoodleNet's Technical Architect and front-end developer, prototype solutions, develop and implement open source libraries, test, bug fix and create documentation.

This is a flexible position (3-5 days/week) and can be based either remotely or out of our office in Barcelona. The successful applicant will however be expected to overlap at least 4 hours per working day with the UTC timezone, as they will work closely with the team which is based in Europe.

Why the Elixir language?

You can read about our decision to use Elixir on the Moodle wiki. Basically, federated social media apps are heavily event driven and Elixir's programming model is a great fit when building real-time IO-heavy applications. It also has a beautiful Ruby-like syntax, and is so efficient that you can use a simple Raspberry Pi as a web server, which is pretty cool.

We're Looking For Someone With Strong Skills In
  • Working openly
  • Contributing to free and open source software projects, particularly those including decentralised technologies
  • Technical development of complex early-stage software projects
  • Prototyping solutions, with the attitude of being happy to fail fast and learn quickly
  • These technologies:
    • Elixir language
    • Relational databases like Postgres (both raw SQL and ORMs)
    • Implementing REST APIs (like ActivityPub)
    • Creating GraphQL APIs (using Absinthe)
    • Implementing diverse 3rd party APIs and libraries
    • Git version control
    • JSON (like ActivityStreams)
  • Agile project management
  • English, with the ability to write good documentation, as well as excellent communication skills for liaising with team members and stakeholders


And If You Know This, Even Better
  • ActivityPub protocol and ActivityStreams web standard, and implementations such as Mastodon
  • Using and/or developing the Moodle software
  • Phoenix Framework (a web framework for Elixir)
  • Erlang (which underlies Elixir) and the actor model paradigm
  • PHP (for integration with Moodle core)
  • Web scraping and DOM parsing
  • JavaScript / Node / React
  • JSON-LD (JSON Linked Data), JSON, RSS feeds & XML
  • Jira issue tracking
  • Docker containers
  • Kubernetes deployments


With This Kind Of Approach
  • The ability to build and maintain relationships and work confidently with people at all levels
  • An enthusiastic and approachable personality
  • A good communicator (both written and verbal) with the ability to earn trust and credibility
  • The ability to work independently and take the initiative
  • A team player with the emotional maturity to tolerate ambiguity and uncertainty
  • The ability to lead by example and manage others, including delegation where appropriate to meet deadlines with competing priorities


Does this all sound good? if yes...


  • Click on the 'apply for this job' button
  • Add a cover letter, resume and anything else you'd like to share. Note that we particularly value living, breathing projects and demos. Please some send code through but also show or tell us why you wrote it, what it's for, what you like about it, how it helps someone, etc.
  • Please do let us know how your experiences and perspectives (personal, professional, academic, or otherwise) could contribute to the diversity of our team.
  • Press send!

Note: applications from recruitment agencies will not be accepted at this time.
 

About Moodle

  • Saa S

Moodle company page is empty
Add a description and pictures to attract more candidates and boost your employer branding.

Other backend developer jobs that might interest you...