Assistant Positions in Software Component Technology, ETH Zurich, Switzerland

Peter Müller p.mueller@web.de
Sat, 29 Mar 2003 16:39:58 +0100


       Assistant Positions in Software Component Technology
     Department of Computer Science - ETH Zurich, Switzerland


The new Software Component Technology group is recruiting two assistants
(PhD students) to work in a young team on techniques and tools that
enable the development of "trusted components", aiming at improving
software quality and promoting reuse.


The research of the Software Component Technology group focuses on
techniques and tools for the development of correct object-oriented
software components such as library classes. Together with the Chair
of Software Engineering, our long-term objectives are to enable the
development of "trusted components" and to establish a center for
component certification. To achieve these goals, we concentrate
on the following research areas:

  * Modular Specification and Verification Techniques to show that
    an object-oriented component behaves according to its specification
    in all contexts in which it might be reused. Our techniques are
    based on classical interface specification techniques and Hoare-logic,
    enhanced to specifically meet the requirements of component-based
    software development.

  * Language Design and Alias Control to improve encapsulation of
    components and complex pointer structures. We have developed a
    type system that can be used to statically describe properties
    of pointer structures, rule out common coding errors by static
    checking, and simplify formal reasoning.

  * Tool Support to make the application of formal techniques practical.
    We have implemented the Java Interactive Verification Environment,
    Jive, to support the development of correct software by applying
    static checking, interactive proof development, and semiautomatic
    proof strategies.


Assistants are expected to participate in teaching, especially in the
areas object-oriented programming, formal methods, semantics of
programming languages, and project management. Among others, teaching
activities include supporting courses and seminars as well as advising
students doing their thesis work.


Applicants must have a very good degree in Computing Science or in a
related subject with a strong Computing Science component. They must
also have documented practical experience in programming, preferably in
object-oriented languages such as Java, C#, or Eiffel. Expertise in
formal methods is a plus.
Since assistants are expected to work towards a PhD, a strong interest
in doing research as well as a good knowledge of English is required.
Knowledge of German is a plus.


An assistant position is a regular job with social benefits. Assistants
at ETH receive an attractive salary and have access to excellent
facilities in one of the world's top computer science departments.
Zurich has just been voted #1 again in the world for quality of life
(http://story.news.yahoo.com/news?tmpl=story2&u=/nm/20030303/hl_nm/cities_li
vable_dc).
As members of the new Software Component Technology group, the
prospective assistants enjoy the benefits of a young team and the close
cooperation with their advisor as well as the opportunities of
collaborating with all members of the Chair of Software Engineering
(Prof. Bertrand Meyer).


For the preliminary web site of the Software Component Technology group
consult http://www.inf.ethz.ch/~peter.mueller
Questions on the positions and applications should be sent to
Prof. Peter Mueller (peter.mueller@inf.ethz.ch) or to the postal
address below.
Applications should include a curriculum vitae, a brief description of
research interests, and, if possible, letters of recommendation from
teachers or employers.

Postal Address:
  ETH Zurich
  Ruth Buerkli
  ETH Zentrum, RZ Building
  CH-8092 Zurich
  Switzerland