The purpose of this page is to act as a liaison between programmers in the Caltech community and individuals in the Caltech community who have programming projects which need programmers.
Note that this is not a general job-search page. We really are only interested in hooking up people who are part of the greater Caltech community, or who wish to hire Caltech students, or who are associated with Caltech in some way. If you want a general job search facility, go to monster.com or some other similar site.
For us to put your job or resume on this site, we'll need some information from you, which is described below.
Here is the format you should use:
The information should be in a single file containing standard XHTML only. No broken HTML, no HTML with proprietary extensions, no CSS, no images, no Javascript, no Flash animations, etc. Feel free to provide a link to your own site if you want to use such things.
Many HTML editors add tons of unnecessary junk to the file; if your file contains such junk, we won't use it. We recommend you edit the HTML by hand using a generic text editor to avoid this problem.
Keep the length down to a couple of paragraphs at most; again, if you need more space, provide a link to your own site.
Send the file as an email attachment (not a regular email which happens to contain HTML).
If you are a programmer looking for a project, we need this information:
If you have a project and are looking for programmers, we need this information:
Here is a template file for projects that you can fill in with your project information.
These are posted with the most recent postings coming first.
Date Posted: 04/24/2007
Company/Organization: Yahoo, Inc.
Contact: Brandon Moore (brandonm@yahoo-inc.com)
Project description:
We are looking for interns for an Erlang project this summer. Erlang is a language designed for writing distributed fault-tolerant systems, which is what we do. We will be prototyping Erlang versions of existing servers, writing the libraries to get Erlang components talking to our current system, and figuring out how to fit Erlang into our building, packaging, launching, and monitoring systems. Interested? Mail brandonm@yahoo-inc.com
Skills required: Knowledge of Erlang is a big plus but not necessary. Knowledge of any functional language (Scheme, Lisp, Ocaml, Haskell) is also very desirable. Should be an experienced programmer who can learn on his/her own.
Time commitment: To be determined.
Start/End date: All Summer 2007
Compensation: Contact us.
Date Posted: 01/22/2007
Company/Organization
California Institute of Technology, Control and Dynamical Systems
Contact:
Joel Sercel (sercel@caltech.edu); phone: (818) 422-0514.
Project description:
Contribute to the development of a Web 2.0 AJAX or AJAX-like system called RATE (RATE stands for RAnking system for Technology portfolio Elements). RATE is an enterprise web application that will help organizations prioritize their research and development efforts through information aggregation. RATE will allow technology users to rank and score technology efforts and will allow technology providers to describe their solutions and compete for improved rankings. This system will exploit concepts explored in the book "Wisdom of Crowds" and best practices in the fields of investment and portfolio management.
Skills required:
The choice of programming language is not a major issue. We are looking for undergrads, preferably from Caltech, who are skilled or at least interested in AJAX or AJAX-related programming and/or Web 2.0 programming techniques (for a description of AJAX and Web 2.0 please check Wikipedia) and/or interested and experienced in User Interface (UI) design and/or informal use-case analysis. Perfect native English speaking skills are critical to this job.
Time commitment:
We are initially looking for one or two part time students with variable flexible hours (totaling 15 to 20 hours per week between one or two workers) to help with UI design, use-cases, and product architecture development. Position are available right away at this level through June. Starting in the summer we are hoping to get a team of 4 to 6 full time students doing application development using an extreme programming development technique (check Wikipedia for description of extreme programming).
Start/End date:
Part time now through June 2007. Full time for the summer quarter. Possible SURF positions available for the summer.
Compensation:
This job pays the standard undergrad compensation rates ($10 to $15/hr) depending on experience, grade level, and skill.
Date Posted: 01/17/2007
Company/Organization
California Institute of Technology, Department of Computer Science
Contact:
Alain J. Martin (alain@async.caltech.edu)
Project description:
I am interested in getting help on one or several programming projects. They are all related to CAD tools for VLSI circuit design, and they would be extremely useful in several classes I teach, in particular CS181.
Here are two projects we are very much interested in:
CAST: We use a hierarchy of languages to design chips starting from a high-level message-passing language called CHP (for which we have a simulator in C) to an intermediate language HSE that is a binary-variable only version of CHP to a langugae called PRS that describes CMOS circuits. We also have several simulators for this language.
CAST is a superstructure that links all the different representations of a system, keeps track of the hierarchy when a component is translated from one language to the next, and allows for mixed-level simulation of systems. It also contains a routine (Cflat) that can flatten the hierarchy and do other translations from one representation to another.
We would like to bring CAST from the state of a prototype to a version that can be safely used by students in the class. Several of my students are available to coach or help coach the project.
HSE2PRS: The second project is a translator from the intermediate representation HSE to the final one (before layout!) PRS. PRS is interesting in that there is no notion of sequencing at all. It is just a set of "rules" that can fire when a boolean conditon is satisfied. We already have several prototypes for HSE2PRS, but none is complete.
Skills required:
We use C most of the time, but the choice of the language is not a major issue. Knowledge of VLSI and CAD is a plus.
Time commitment:
Not specified.
Start/End date:
Start immediately, end date not specified.
Compensation:
The persons involved will be coauthors on any papers written resulting from the work. The work can be used as a CS 11 project track equivalent.
Date Posted: 01/17/2007
Company/Organization
Planewalker Games
Contact:
Jason Compton, 608-824-8625, jcompton@planewalkergames.com.
Project description:
We are seeking game content implementors for an independently produced computer RPG for Windows, Linux, and Macintosh. Tasks will include:
Implementing playable game content based on documents provided by content writers. Content writers describe quests, item rewards, etc. and organize dialogue in flat file format. These directives must be converted to playable code by the implementor (you). Implementors will deliver fully-playable modules which contain the relevant script code and XML definitions for items, creatures, spells, and so forth.
Implementing "under-the-hood" game mechanics in script, as required. This may include new library functions to be used globally by other implementors.
Skills required:
Implementors will be required to code event scripts in our game engine's
novel scripting language, known as "wscript." Wscript is derived from
Ocaml. (From our development documentation: "The WeiNGINE scripting language
wscript is a strongly-typed Implementors will also be required to
code in-game spoken dialogue in our game engine's novel dialogue scripting
language, informally known as ".d". Dialogue is a state machine using
multiple-choice player replies, similar to dialogue found in games such as
Fallout, Baldur's Gate, Temple Of Elemental Evil, and Neverwinter Nights. Our
dialogue language offers a number of convenience shortcuts which make the
creation of complex multi-actor dialogues extremely efficient. Prior
familiarity with the .d language as seen in the Infinity Engine tool WeiDU is
a plus but not required. All other content, such as in-game creatures,
items, and spells, is created as simple XML resources. Basic familiarity with
XML conventions is a plus but not recommended--the resource conventions are
easy to learn by example. Aside from a development build of the engine and
development documentation (which we of course provide) the only other
development tool necessary is a text editor you are comfortable using. We can
provide syntax highlighters of modest quality for ConTEXT and Crimson.
Development under Windows is preferred but builds are available for x86 Linux
and Intel Mac as well. Time commitment: Time commitment will vary based on the interest and efficiency of the
implementor. A single quest of moderate length may be coded up in half a day
by a proficient implementor. More complex quests will require additional
time. It is recommended that interested parties be able to dedicate at least
12 hours per week to this work. Start/End date:
Opportunities are immediately available. Finish date is governed by the stack
of unimplemented quests. Compensation: Our bootstrap budget allows for modest payment, payable upon submission of
completed quests and content.
None at the moment.