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 ([EMAIL PROTECTED]) 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 _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell