Internship Application Template

From Xen
Jump to navigationJump to search


This document outlines the information that we expect students that apply for GSoC to provide and is also the template that Google will ask you to use.

Just to be clear:

  • You will have to apply through Google system using this template
  • It is good practice to discuss and work with the Mentor before making an application
  • You can use the questions in this template to inform the discussion, before the application period starts.
  • Feel free to copy your application into a google doc, etherpad or similar and work through some of it with your prospective mentor
  • Also note, that we are *strongly encouraging* you to check whether you have all the hardware for your project, whether you can build the software from source and run it, work on small test tasks and/or coverity issues, etc. prior to the application period or between the application period and the announcement of candidates.

The Template

Thanks for submitting your proposal! We're keen to hear a little more from you about your own thoughts and plans about this project. Here are some questions that would help us to understand your position a little better.

Of course, we'd like to help you if you're stuck on answering any of these questions or would like more advice. Feel free to post questions about your proposal on the mailing list or chat to us in the IRC channel. We're looking forward to hearing from you.

Make sure you review and iterate your proposal with your mentor. You can use whatever medium you prefer. You may want to use google drive or another collaborative tool to work with your mentor on the application.

1) Personal Information

1.1) Full Name:

1.2) Email:

1.3) Other contact information (Optional): <add IRC handle, skype, whatever you like here>

1.4) Other applications: have you applied to or do you plan to apply to other Google Summer of Code projects for other organizations?

1.5) Previous experience: have you been part of the Google Summer of Code in the past or OPW in the past? (if so, link to your work)

1.6) Time commitment: we'd also like to know whether you're planning to work full-time on the project, or do you have other commitments (e.g. full/part time jobs, summer classes) during the summer? (It's no problem either way, but useful for us to know)

1.7) Other programs: please let us know whether you have applied to other student and/or intern programs such as Outreachy and list the ones you applied to

2) Preparation done so far

Note that the following questions are *not required* for an application. However, demonstrating that you have dealt with these following questions will make sure that you can get started quickly on the project and will give you an edge compared to other applicants.

2.1) Hardware: (Have you checked, whether you have the right Hardware to complete the project - see Outreachy/Hypervisor in particular for Hypervisor projects. Link to any public threads on mailing lists, where you discussed hardware requirements and summarise the outcome.)

2.2) Ability to Build and Test: (Being able to build the project from source and run it, is the first hurdle when trying to get started. If you manage to do this, you are pretty much set for development. Thus, we recommend that you work with your mentor to build the project - maybe with an extra log entry added to the code, build it, run it and share the logs with the mentor on the developer list. Link to any public threads on mailing lists, where you discussed hardware requirements and summarise the outcome.)

2.3) Make a Small Contribution: (Small contributions show that you understand the workflow within the community. We always have a lot of small issues that can be fixed. If you have done so, link to any public patches you may have posted.)

3) Implementation Plan

3.1) Project for which you are applying (Domain Support, Xen Hypervisor, The XAPI toolstack, Mirage OS, Windows PV Drivers, Embedded & Automotive Drivers):

3.2) Title for your proposal (for example "Virtio on Xen"):

3.3) Problem Description (Provide a high-level overview textual description of the problem in 2-3 paragraphs):

3.4) Implementation Plan (Provide as much detail and organization as you can. Discuss with the appropriate interested developers in the Xen Project development community - refer back to GSoc 2014 for more information) :

3.5) Expected Deliverables: (List the main items that you will deliver during the program - this does not have to be perfect. It is also a good idea to link to a discussion on the relevant public mailing list here to give us some context. As an aside, it will also help you as well. Set some minimum goals and stretch goals - these are nice to have's. If you have experience with or prefer agile development methodologies, write down what you would like to achieve in different scrums. That's perfectly OK: you may want to discuss with your mentor - he/she can act as product owner or scrum master if you want. Do agree with him/her upfront.)

3.6) Timeline (Be specific and as complete as you can. Discuss feasibility with your mentor. Build in some buffers and set some stretch goals. This will help you with progress and motivation! ):

3.7) Maintenance: (optional) Think about how much maintenance you think the code you write is likely to require. Your mentor will have a good idea about this and you may want to discuss with him or her. Trying to estimate this is a good work skill. If not too much, think about whether you would like to be involved in maintaining your code after the project finishes and let us know.

4) Let us know how much help you need

4.1 Describe experience with Domain Support, Xen Hypervisor, The XAPI toolstack, Mirage OS, Windows PV Drivers, Embedded & Automotive Drivers (as appropriate):

4.2) Other experience: describe relevant experience that you have (If possible, describe what uniquely qualifies you for this proposal):

4.3) Learning and support: describe the part(s) of the proposed plan do you expect to be most difficult ( Include the specific types of of mentor help you think you will need for the part(s):

4.4) Hardware: let us know what Hardware and Software that you have for development (exact model number, etc.). Some projects require certain features in your Hardware such that you can do development. Also note that in some cases, it may be possible to loan you Hardware for development:

4.5) Describe the part(s) of the proposed plan do you expect to be easiest:

Example proposals

For example proposals and guidance on how to get accepted, see: