Senior Distributed Systems Developer - Cloud computing

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

Keywords

Description

Seeking a Developer with experience in distributed systems using languages such a Java, Python or Ruby, in a Linux environment. The work will contribute to the organization's Cloud project. This is an infrastructure as a service that provides Cloud services for the organization's stakeholders. The organization is building the infrastructure to support a federation of virtualized resources provisioned through Cloud services. The mission of the project is to allow the stakeholders to present their workflows as virtual machines and run them on federations of private and commercial clouds, such as Amazon EC2, Azure, etc.

With the growing utilization of the Cloud infrastructure, strategies to optimize the provisioning of resources become crucial to the mission. In particular, virtual machines that are "idle" should be detected and when needed, retired by the infrastructure to make resources available for higher priority requests. Virtual machines instantiated on the Cloud run "idle-detection" processes that use heuristics to combine key indicators of utilization, such as interactive use of keyboards and mouse, use of CPU, memory, storage, network, etc. Currently, this information, however, is not combined to express global policies to optimize the utilization of the overall infrastructure.

This work will develop a system that: gathers and aggregates the idleness status of virtual machines; allows the management of policies on the retirement of the idle virtual machines; interfaces with OpenNebula to enforce the new allocation of resources.

Responsibilities
  • Design idle virtual machine optimization system.
  • Understand the organization's Cloud architecture; get familiar with major tools and components.
  • Define and present a design for the system.
  • Deploy skeleton infrastructure.
  • Enhance idle-detection tool to publish VM status.
  • Prototype status gathering and aggregation service.
  • Prototype Back End database.
  • Demonstrate status gathering and aggregation capabilities of the prototype.
  • Integrate policy management functionality
  • Prototype policy definition management and triggering mechanism.
  • Define prototypical policies and study behavior under several realistic circumstances.
  • Requires VM owners to simulate idleness states.
  • Demonstrate soundness of policy definition and triggering.
  • Integrate prototypical system with OpenNebula.
  • Understand OpenNebula interface to retire VM.
  • Integrate prototypical system with OpenNebula.
  • 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 policies and implementation.
  • Transition the system to production.
  • Finalize documentation; automate software building and packaging; productize system.
  • Demonstrate production readiness of the product.

SKILLS

Must have a Bachelor's degree in science with 5+ years of related working experience. Experience with development, integration, testing, and troubleshooting of distributed systems on Linux needed. Experience with Cloud-related technologies and computing in an Infrastructure-as-a-Service environment also required. Need to have solid knowledge of Java, python or ruby, and UNIX Shell Scripting, with 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 is critical for success in this role. Excellent written and verbal communication skills are required. Familiarity with OpenNebula is a plus.

Synectics is an Equal Opportunity Employer.

Start date
n.a
From
Synectics
Published at
30.07.2013
Project ID:
574583
Contract type
Freelance
To apply to this project you must log in.
Register