Faculty of Science
The Faculty of Science consists of six departments: Biology, Pharmaceutical Sciences, Information and Computing Sciences, Physics and Astronomy, Chemistry and Mathematics. The Faculty is home to 3500 students and nearly 2000 staff and is internationally renowned for the quality of its research. The Faculty's academic programmes reflect developments in today's society.
Job description
In the financial services domain, large monoliths of software products are used to control all financial flows in any type of organization. Software monoliths have several well-known disadvantages, recognized by both the vendors and customers of these software products. Examples of these disadvantages are inflexibility, domain unspecificity, and the fact that these systems tend to be hard to maintain. Both vendors and customers of these systems are perfectly aware that better and cheaper customer specific solutions can be created along the service-oriented paradigm. It is non-trivial, however, for vendors of monoliths to chop up their product into complete, secure, deployable, and useful services to be reused in service configurations.
This project aims to extract large numbers of services from monolithic products and open source components in the financial services domain using the Service Extraction Process. Fortunately, several platforms and service markets recently have become available, Sales force being one example, in which services can be published, managed, and most importantly composed. These service platforms have a bootstrapping problem in that they do not contain many services to begin with. A significant side effect of this project is that the creation of large numbers of services can solve the bootstrapping problem, since they can be used to populate service-providing platforms, e.g., Sales force.
The concrete research questions the candidates will address are the following:
Q1: How can we identify useful services within a large body of code?
Q2: To which extent can we automate the extraction, conversion, and deployment of services?
Q3: Can we do this in a way that is programming language independent?
Please be aware that we are looking for candidates with distinct profiles.
The * first candidate * will have a master's degree in information or computer science and will specialize in requirements engineering, pattern identification, empirical software engineering and service-based engineering. Furthermore, the student will have a strong background in programming languages and some programming experience.
The * second candidate * has a more technical, computer science background, most likely software technology with a focus on compilers and software analysis. Candidates that fit both profiles are particularly invited to apply.
The first candidate will work in close cooperation with our industrial partners DBS, Runbook, Yuki, Yunoo, and 42Windmills.com and spend quite some time in these industrial environments, extracting requirements and patterns, and validating the implementation provided by the second candidate. Research will follow an industry-as-laboratory style, meaning that actual research problems are drawn from industry and that researched solutions are tried out immediately in the industrial context.
Qualifications
The Faculty of Science consists of six departments: Biology, Pharmaceutical Sciences, Information and Computing Sciences, Physics and Astronomy, Chemistry and Mathematics. The Faculty is home to 3500 students and nearly 2000 staff and is internationally renowned for the quality of its research. The Faculty's academic programmes reflect developments in today's society.
Job description
In the financial services domain, large monoliths of software products are used to control all financial flows in any type of organization. Software monoliths have several well-known disadvantages, recognized by both the vendors and customers of these software products. Examples of these disadvantages are inflexibility, domain unspecificity, and the fact that these systems tend to be hard to maintain. Both vendors and customers of these systems are perfectly aware that better and cheaper customer specific solutions can be created along the service-oriented paradigm. It is non-trivial, however, for vendors of monoliths to chop up their product into complete, secure, deployable, and useful services to be reused in service configurations.
This project aims to extract large numbers of services from monolithic products and open source components in the financial services domain using the Service Extraction Process. Fortunately, several platforms and service markets recently have become available, Sales force being one example, in which services can be published, managed, and most importantly composed. These service platforms have a bootstrapping problem in that they do not contain many services to begin with. A significant side effect of this project is that the creation of large numbers of services can solve the bootstrapping problem, since they can be used to populate service-providing platforms, e.g., Sales force.
The concrete research questions the candidates will address are the following:
Q1: How can we identify useful services within a large body of code?
Q2: To which extent can we automate the extraction, conversion, and deployment of services?
Q3: Can we do this in a way that is programming language independent?
Please be aware that we are looking for candidates with distinct profiles.
The * first candidate * will have a master's degree in information or computer science and will specialize in requirements engineering, pattern identification, empirical software engineering and service-based engineering. Furthermore, the student will have a strong background in programming languages and some programming experience.
The * second candidate * has a more technical, computer science background, most likely software technology with a focus on compilers and software analysis. Candidates that fit both profiles are particularly invited to apply.
The first candidate will work in close cooperation with our industrial partners DBS, Runbook, Yuki, Yunoo, and 42Windmills.com and spend quite some time in these industrial environments, extracting requirements and patterns, and validating the implementation provided by the second candidate. Research will follow an industry-as-laboratory style, meaning that actual research problems are drawn from industry and that researched solutions are tried out immediately in the industrial context.
Qualifications
- Master's degree in computer science, information science or informatics.
- Broad experience and interest in the area of software engineering and requirements engineering.
- Good communicator, strong social skills, team player.
- Independent working style.
- A good knowledge of English is an absolute must.
Salary is in the range between € 2,042 and maximum € 2,612 gross per month.
The salary is supplemented with a holiday bonus of 8% and an end-of-year bonus of 8,3% per year. In addition we offer: a pension scheme, a partially paid parental leave, flexible employment conditions. Conditions are based on the Collective Labour Agreement Dutch Universities. For more information we refer to our website about employment conditions.
The research group will provide the candidates with necessary support on all aspects of the project.
Further detailsAdditional information about the vacancy can be obtained from: Slinger Jansen (slinger.jansen@cs.uu.nl) and Jurriaan Hage (jur@cs.uu.nl).
As part of the selection procedure, the candidate is expected to give an outline of his/her research plans in a written report and an oral presentation.
How to apply
When applying, make sure to include (pdf versions of):
- A detailed resume (with publications, if you have any)
- A motivational letter referring to both or a particular one of the open positions (maximum 3 pages)
- Copies of marks and degrees/certificates
- A list of two references that we can contact
- Your MSc thesis