Since December 2005, I am a member of research staff in the Smart Spaces Lab at the Nokia Research Center in Helsinki. In this group I'm driving innovative research projects around smart places and spaces with a strong focus on using internet and open source technologies as a means to break through the problem of applications in this domain having trouble of getting accepted in the market.
Before joining Nokia, I enjoyed a career as a software architect and release
manager at GX Creative Online Development in the Netherlands. I obtained a PhD
on software engineering and software architecture from the University of
Groningen in 2003, a Swedish Licentiate degree from the Blekinge Institute of
Technology and a Master of Science degree from Utrecht University. I have by
now built up extensive academic and industrial experience as a software
architect, software engineering and ubiquitous computing researcher,
innovator, and Java developer.
My long-term ambitions are to stay active in a software R&D position, as I am now, in either the software industry or the academic world and to continue to work with new technologies. Having moved several times (internationally) my next goal is to move to where I can easily speak the language (i.e. English, German or Dutch) and settle down for a longer period of time, or even permanently.
Name: Jilles van Gurp
Birth date: October 20th, 1974 in Breda, The Netherlands
Marital status: Unmarried
Current address:
Mechelininkatu 18 A 26
00100 Helsinki
Finland
Work Email: jilles.vangurp@nokia.com
Private Email: jilles@jillesvangurp.com
Personal website: http://www.jillesvangurp.com/
Telephone: +358 50 4869193
Current employer: Nokia Research Center, Helsinki
Position: Member of Research Staff.
I studied computer science at the University of Utrecht in the Netherlands between 1994 and 1998. At the end of my study, I did my master thesis project on Object Oriented frameworks at the University of Karlskrona/Ronneby (Now known as the Blekinge Institute of Technology) in Sweden in the group of prof. Jan Bosch. Afterwards I continued to work for there as a PhD student until in 2000 both Jan Bosch and I moved to the University of Groningen in the Netherlands where I finished my PhD in February 2003. After my PhD, I took a one-year contract for a post doc position at the same university. From January 2004 until November 2005, I was employed at GX Creative Online Development as a software architect and release manager. Since December 2005, I have been working as a member of research staff at the Nokia Research Center (NRC) in Helsinki.
A more detailed overview of my career is provided below.
2005-now. Various internal courses in Nokia on
Selling your ideas
Open Source, Copyright and Patents – Passed required curriculum for becoming an Open Source Contributor in Nokia.
Coaching
February 2003. PhD degree, University of Groningen, the Netherlands.
March 2001. Licentiate Degree, Karlskrona/Ronneby, Sweden.
The licentiate degree is a Swedish degree that is typically awarded half-way the PhD The exam includes defending a thesis and 40 points of PhD level courses.
Title of licentiate thesis: “Variability in Software Systems: The Key to Software Reuse”
Opponent: Prof. Dr. Serge Demeyer.
March 1999. M. Sc., University of Utrecht, the Netherlands.
June 1994. Obtained the VWO high school diploma, Veluws College, Apeldoorn, The Netherlands.
2008-now. Member of research staff in the Smart Space Lab at the Nokia Research Center in the Smart Space Application Platform Team headed by Dr. Christian Prehofer.
Lead architect and development lead for the trial of our Smart Places platform which integrates indoor location based services such as indoor location based vouchers and advertising, friend finders, location tagged search, etc.
Demo of our system at the Internet Of Things conference 2008.
Represent Nokia in a 3 year EU FP7 Project SENSEI; technical work on SENSEI architecture and requirements.
Supervise two master thesis interns and four software engineers in internal project.
.Published and co-authored several articles and IPR reports.
2006-2007. Member of research staff in the Computing Structures Core Technology Center at the Nokia Research Center in the Smart Space Application Platform Team headed by Dr. Christian Prehofer.
Software architect and technological leadership in the team's long term research project on building a software platform for smart space services. Contributed to excellent evaluation of this project internally.
Secured funding for a 3 year EU FP7 Project SENSEI on integrating wireless sensor and actuator networks into the internet of the future.
Represented Nokia in ITEA Trust4all project and collaborated with HIT and TKK subcontractors.
Published and co-authored several articles and IPR reports on smart spaces, and software product lines. Three workshop articles and one book chapter.
Internal evangelization of OpenID, Social Networking and other trends that are increasingly relevant in Nokia. Two internal presentations on OpenID and Enterprise 2.0.
2005-2006. Research engineer in the Software & Application Technology Lab at the Nokia Research Center in the Software Architecture Solutions team headed by Juha E. Savolainen and later James Reilly.
Research & technical work in large internal project related to search concepts and vertical mobile services.
Write scientific papers and IPR for Nokia. Presented 3 articles at SPLC 2006 (1 in the main conference track and two in the workshop program). Wrote an invited paper for a keynote by Jan Bosch, presented at the International Conference on Distributed Applications and Interoperable Systems 2006.
2004-2005. Software Architect at GX Creative Online Development.
Development of java based content management software product (GX Webmanager). This includes development of a Lucene based search engine, object database & scripting environment, a caching proxy, xsl personalization, soap services, etc. All of these components are part of GX Webmanager.
Release manager for product releases of GX Webmanager v8.0, v8.1 and v8.2. Set up a formal release process and drive integration & testing. Coordinate bugfixing process, hotfixes. Development of new components and technical documentation
Maintaining the ant based, highly automated build and deployment system; configuration of application servers such as jboss, oc4j, jrun & tomcat as well as supporting tools; junit based test suite. Supporting deployed production servers
Technical support of GX WebManager for GX engineers (working on GX WebManager based projects for customers) and system administrators responsible for deploying these projects.
Active on various customer projects involving implementations of GX WebManager for customers. Integration of a soap based customer backend system with GX WebManager using xsl, personalization and the GX form module. Development of soap webservice to integrate the GX WebManager shop & product catalog functionality with the customers backend systems. Development of various customer specific extensions of GX WebManager.
Coach two master student interns: Ronald Bos (usability) and Martijn Claus (aspect oriented programming).
2003. Post-doc in the SEARCH (Software Engineering & Architecture)
research group headed by prof. Jan Bosch at the University of Groningen.
Financed by the IST STATUS project (SofTware Architecture That supports
Usability).
Responsibilities include:
Representing the university in the European Science Foundation (ESF) RELEASE Research Links to Explore and Advance Software Evolution) network and the IST STATUS (Software Architecture That Supports Usability) project.
Conducting research (85%): large case study on the topic of design erosion; preparing deliverables for the STATUS project.
Education (15%): course development, supervising students, preparing and reviewing student reports & exams.
Peer review of articles for various journals, conferences & workshops.
2001- 2002. PhD student in the SEARCH (Software Engineering & Architecture) research group, headed by prof. Jan Bosch, at the University of Groningen.
Participated in ESAPS (Engineering Software Architectures, Processes and Platforms for System-Families), an ITEA project funded by the EU.
Assisted in various courses at the University of Groningen (second & third year student projects; Software Engineering course; course development for mobile software).
Assisted in handling the review process and organization of the GCSE 2001 conference and the WICSA 2002 conference.
Organization of the 1st workshop on software variability management (February 2003, Groningen).
Conducted case studies at various companies including, Baan BV, Rohill Engineering, Vertis BV and Thales Naval BV.
October 1998-2001. PhD student in the RISE research group headed by prof. Jan Bosch at the University of Karlskrona/Ronneby in Sweden sponsored by NUTEK (the Swedish National Board for Industrial and Technical Development).
Assisted in various courses at the University of Karlskrona/Ronneby (Software Testing; Components).
Supervised several bachelor diploma projects.
Conducted case studies at various companies including Ericsson, Symbian and Axis AB.
1997-1998. Part-time (25%) Software Engineer at the faculty of computing and literature (now a part of the computer science department at the University of Utrecht). In this job, I worked on several internal Java projects (applets, swing, xml, JavaBeans).
1996-1997. Student Assistant (25%) at the University of Utrecht. The courses I assisted, included first and second year Java courses; introductory computer courses and a database course.
1992-1997. Various non-IT related jobs.
Software Architecture. I have a PhD on software design and software
architecture and have experience designing and developing solutions in the
content management industry as well as inside Nokia supporting research
prototype development. My experience as a researcher in this field has given
me a very broad perspective on topics that are highly relevant in the software
industry. I have used this to my advantage in my jobs at GX Creative Online
Development and at Nokia where I have been active in software architect roles.
As part of my research career I have been exposed to development practices in
several companies where I have done case studies. Additionally, since joining
Nokia, I have learned a lot about its software architecture practices in the
various business units and product lines. I am not a proponent of model driven
architectures and consider myself to be in the camp of Martin Fowler, Kent
Beck et al. who are proponents of agile & test driven development
practices. In my current job, I use Scrum and test driven development.
Finally, I have been involved in the software engineering education at three
universities where I have taught students about various aspects of software
engineering such as testing, working in teams, documentation, software design
& implementation, etc.
Java. I have extensive experience with Java. I learned the language when it was introduced in 1995 while teaching it to first and second year students. Between 1996 and 1998 I also worked as a part-time Java software engineer. This work involved working with the early swing betas for jdk1.1, applet programming, and some non-servlet based server development. During my research career (1998-2003) I've continued to use Java as a language for my research prototypes. Since leaving university in 2003, I use it on a daily basis for server-side programming using J2EE 2 and JEE 5 standards (servlets, jsps, mail api, jndi, mbeans, ejb3), various open source libraries such as Apache's httpclient, Axis, Lucene etc. I maintained the Apache Lucene based search engine; routinely worked on the companies java based content management system which involves such things as producing and consuming soap based web services, integrating with various databases and application servers. Finally, I was responsible for supporting other software engineers, support engineers and system administrators with deployment of the software. At Nokia, Java is the language of choice for many of the research projects, including the ones I am involved with. Internal software developed includes a search and index server on top of OSGI and Apache Lucene and various service components (SOAP and REST).
Python and other languages. Python is currently used as the web development platform (in addition to Java) in the smart space application platform team. I have so far used it to implement service applications on top of the Python Django framework as well as some security related code (WSSE, OAuth, SAML, OpenID). Additionally, I have used many programming languages other than Java including the .Net framework, C, C++, Pascal, Smalltalk, Visual Basic. In addition, I have used various functional and logical programming languages and scripting languages such as Python, Ruby and the Unix shell. Finally, I have evaluated various experimental languages, such as AspectJ and HyperJ, that extend the existing programming paradigms. In general, I have the skills to pick up any language in a short period of time and enjoy learning new languages, tools & techniques.
Web technology. Since I worked for a content management software company, web technology such as various XML dialects, CSS, HTML, Javascript is a core competence. On the server-side I've used web services, XML & XSL, Servlet containers, atom publishing protocol, REST, SOAP, etc. Additionally, I have done front end design using CSS and Javascript for various web based user interfaces. I am highly interested in microformats (particularly hcalendar, geo and XFN); decentralized security around OpenID and Oauth; Blog related standards such as Atom and Atom Publishing Protocol; blogger ping API; and XMPP and have driven the integration of these technologies into research projects I work on at Nokia as well as actively evangilized many of those technologies to business units.
Research & Case-studies. During my research career, I have been
able to look in the development kitchen of many European software-developing
organizations. I have evaluated software architectures at, among others, Axis
AB (Sweden), Ericsson Software/UIQ, Symbian, Thales Naval B.V., Baan B.V.,
Rohill Engineering B.V., Vertis B.V. These evaluations include interviews
& discussions with software architects, software engineers and product
managers. In addition, I was given access to various design and requirements
documents and even source code in some cases. I have written over 30 articles
for conferences, research journals and workshops.
My research interests include, but are certainly not limited to: ubiquitous and pervasive computing, software architecture & design, software product lines, software variability, object oriented programming, new programming paradigms (e.g. aspect oriented programming and intentional programming), software development methodology and usability. Over the past two years I have shifted most of my research attention to publishing in the ubiquitous computing community to promote the smart space research I am currently involved in. Early results include publications and presentations at Ubicomp 2007, CCNC 2008, and IOT 2008.
I have supervised the thesis work of the following persons:
Additionally I supervised the PhD work of Eelke Folmer and Anton Jansen while
working at the University of Groningen (their main supervisor was prof. Jan
Bosch) .
Editor of the Software Variability Management Workshop 2003, Groningen.
The Second International Workshop on Variability Modeling of Software-intensive Systems (2008)
The Third International Workshop on Variability Modeling of Software-intensive Systems (2009)
I have published over 30 articles in journals, books, conferences, etc.. A selection is presented below. For a full overview please refer to my website (http://www.jillesvangurp.com/publications), which also provides downloadable PDFs.
Jilles van Gurp, Christian Prehofer, Cristiano di Flora, Experiences with realizing Smart Space Web Service Applications, accepted for 1st IEEE International Peer-to-Peer for Handheld Devices Workshop at ccnc '08, October 2007.
Christian Prehofer, Jilles van Gurp, Cristiano di Flora Towards the Web as a Platform for Ubiquitous Applications in Smart Spaces, Second Workshop on Requirements and Solutions for Pervasive Software Infrastructures (RSPSI), at UBICOMB 2007, Innsbruck, 16-19 Sebtember, 2007.
Christian Prehofer, Jilles van Gurp and Jan Bosch, Compositionality in Software Product Lines, in Emerging Methods, Technologies and Process Management in Software Engineering, Andrea De Lucia, Filomena Ferrucci, Genny Tortora and Maurizio Tucci (editors), Wiley, 2008.
Jilles van Gurp, Anssi Karhinen, Jan Bosch, Mobile Service Oriented Architectures (MOSOA), invited paper, proceedings of 6th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems
Jilles van Gurp, Sjaak Brinkkemper, Jan Bosch, Design Preservation over Subsequent Releases of a Software Product - A Case Study of Baan ERP, Journal of Software Maintenance and Evolution: Research and Practice, vol. 17, pp. 277-306, 2005.
Jilles van Gurp, "On the design & preservation of software systens". PhD thesis, University of Groningen, 2003.
Mikael Svahnberg, Jilles van Gurp, Jan Bosch, A taxonomy of variability realization techniques, Software Practice & Experience, vol. 35, pp. 1-50, 2005.
Jilles van Gurp, Jan Bosch, Design Erosion: Problems & Causes, Journal of Systems & Software, 61(2), pp. 105-119, Elsevier, March 2002.
Jilles van Gurp, Jan Bosch, Role-Based Component Engineering, in "Building Reliable Component-based Systems", editors: Ivica Crnkovic and Magnus Larsson, Artech House Publishers, 2002.
Jilles van Gurp, Jan Bosch, Mikael Svahnberg, On the Notion of Variability in Software Product Lines, Proceeedings of WICSA 2001, August 2001.
Jilles van Gurp, Jan Bosch, "Design, Implementation and Evolution of Object Oriented Frameworks: Concepts & Guidelines", Software Practice & Experience no 33(3), pp 277-300, March 2001.