software development master