|
Jobs at the NMI Build and Test Lab |
The Metronome team works closely with the NMI Build and Test Lab to develop and maintain the software which enables the Lab to provide reliable and automatic building and testing for large and complex software projects like Globus, Condor, and OGCE. The Lab provisions and manages a wide variety (more than fifty) of hardware-software platforms; Metronome automates and simplifies the interaction of users' build and test routines with this infrastructure. We're looking for a talented programmer to help us better answer the questions posed by large-scale building and testing: how do you coordinate builds? replicate old ones? run tests on multiple platforms? track the results? help the user make sense of a dozen test failures on a dozen platforms? automatically acquire and release expensive resources? How can one framework simplify the complicated distributed system behind the scenes for beginners without restricting advanced users? If these questions interest you, we'd love to talk to you!
Metronome depends on Condor, and we are a part of the team that develops and maintains it. While this job will probably not involve developing Condor, there is potential for work beyond even the broad scope of Metronome:
As a Metronome programmer, you'll have the opportunity to improve a system that has already been used for more than 100,000 build or test jobs. The framework proper is written almost entirely in Perl, the rest in shell scripts. Metronome also provides a web interface to the Lab, written entirely in PHP; the system also extensively interacts with Condor and a MySQL database. You will find and fix problems in the framework and the web interface, as well as improve the efficiency of the software as it and the Lab grow. You will also develop new features and services for our users, who work for cool and interesting projects and have cool and interesting problems.
You should be comfortable in a Linux or Unix environment, although Windows scripting, particularly with Cygwin, is an advantage. Some experience in system administration would be helpful, both for redundancy with Lab personnel and making your own job easier. Your primary task would be distributed software development, primarily in Perl. Proficiency with PHP or databases will be a plus.
This full-time job requires a bachelor's degree, preferably in computer science or a closely related field. We think this position is best suited to those with 0-5 years of experience, but will consider more experienced applicants as well.
The University of Wisconsin-Madison is a great place to work. You can read about the benefits in detail elsewhere. (When reading about the benefits, note that this position is considered as "Unclassified" academic staff, and has different benefits from the "Classified" staff.) But in short, we have five weeks of vacation/personal time per year, very good health insurance (it’s fairly inexpensive to cover your family in addition to you), and a good retirement plan. Please note that the starting salary depends on experience, and the number in our official job description is the minimum.
In addition to the official benefits, there are plenty of side benefits.
If you’re interested in working with us, please send a cover letter and resume to condor-jobs (at) cs.wisc.edu Please put "PVL #58147" in the subject line of your email, to make it clear that you are applying for this position.
You can read our official Position Vacancy Listing (PVL) , which includes more details on applying. Please don’t be alarmed if you notice that the anticipated begin date has already passed. The position is open, and the real anticipated begin date is when you are available. Similarly, don’t worry about the bit that says “Application must be received by...”
The Condor Team is also hiring a few other people.