Senior Distributed Systems Developer Consultant

Illinois  ‐ Onsite
This project has been archived and is not accepting more applications.
Browse open projects on our job board.

Keywords

Description

Seeking a consultant with development experience in distributed systems using languages such a Java, Python or Ruby, in a Linux environment.

The project is adapting a local tool for job submission (jobsub) to work in a Client Server mode. This strategy aims at isolating the user (client) and the administrative (server) environments, to improve robustness and ease of operations for the service (administrative environment). Goal of the project is to release to production the new service with the start of calendar year 2014. To achieve this deadline, the service must be developed to the quality level of semi-production by Thanksgiving, so that it can be strengthened in December with beta-users feedback. The current statement of work covers the Oct - Nov scope of work, with the understanding that we might need to extend the contract for the move to production in December.

The consultant will be responsible for some or all of the following areas of work in the jobSub Client Server project:
  • Design JobSub RESTful Web Service: Understand JobSub Web Based architecture; Familiarize with major tools and components; Understand the JobSub RESTful APIs; Understand HTCondor python bindings.
  • Deploy skeleton infrastructure: Deploy selected Web Framework (Cherrypy or dJango), HTCondor, JobSub, Apache server; Configure Web Framework to work with x509 authentication
  • Prototype job submission to HTCondor queue using RESTful API using curl and x509 authentication
  • Prototype monitoring pages for jobs in HTCondor as per the RESTful APIs
  • Demonstrate a working prototype that does HTCondor job submission using curl
  • Integrate Prototype with JobSub
  • Integrate the job submission REST API to work with the options supported by jobsub and jobsub client
  • Demonstrate end-to-end functionality of prototype to retire idle virtual machines according to policies
  • Solidify prototype: Integrate experience with the prototype to prepare the system for production use; Study the system in a production-like environment and tune the implementation
  • Transition the system to production: Finalize documentation; automate software packaging; productize system; Demonstrate production readiness of the product
SKILLS:

Minimum Qualification Requirements:
  • Bachelor's degree in science with 5+ years of related working experience.
  • Experience with development, integration, testing, and troubleshooting of distributed systems on Linux
  • Experience with Client Server architecture in a large distributed system
  • Experience with Django, Cherrypy or other python web development frameworks
  • Solid knowledge of Java, python, and UNIX Shell Scripting
  • Experience in the definition of web-enabled protocols, such as Web Services or REST.
  • Demonstrated ability to work independently and with only general directions from a supervisor
  • Excellent written and verbal communication skills
Start date
n.a
From
Synectics
Published at
03.01.2014
Project ID:
645985
Contract type
Freelance
To apply to this project you must log in.
Register