educational software developer