Job offered: Moodle programmer

Type: Contract
Location: Online

We need a Moodle Programmer.

We need a moodle programmer to create a procedure to upload videos from Moodle to Amazon's S3bucket.


More specific we want our instructors to be able to upload their videos from moodle to Amazon S3 but in a specific folder. Their folder.

Path example: Courses/name of instructor/course/videos of the course

If an instructor has 2 different courses then the procedure will be the same but will change the name of the course. Both courses will appear to this instructor's folder.

Instructors will be able to upload and re-upload their videos when there is a change to the video but they will not have access to them via amazon's s3 bucket.
(They will not be able to track the videos from s3 bucket)

This is a procedure that only admins can do. Admins will have access to everything.  Instructors can upload as many videos as they want until the course is public. Then they will not have access to upload procedure. It will be closed.

Furthermore when instructors upload the same video twice or 3 times because of a change then this video will be:

eg. The title of the video.mp4, the title of the video-1.mp4, the title of the video-2.mp4 etc.

The way we created the courses to moodle is with add file resource.

Right now students are able to download the courses something that we do not want because we have a subscription business model.

We need to be able to stream the videos through cloudfront with encrypted urls.

When a students pays for a course and want to see a specific video this video will be streamed through cloudfront. So whatever resource we create the courses with, when a student plays a specific video this will pass through cloudfront.

We use jwplayer.


Developers must have excellent knowledge of PHP, moodle core, moodle plugin development  and amazon web services. 

Previous experience in such job is an advance. 

The successful applicant can work online from his place but he will follow specific deadlines of the company.


Entry added by Vasilis Kratidis - 6 Apr 2015
Last updated - 6 Apr 2015