Coding internships with the Open Energy Dashboard
OED offers internships for students in many forms. Every internship is an educational opportunity where we strive
to help you learn and increase your knowledge and not just complete coding tasks for the OED project. These can
occur during the academic year or during
breaks/summer. The project will support your getting academic credit if your college/university has this option.
We also support working with a faculty member who wants students in their class to work on OED though these are
typically not done as internships. All internship are done virtually and we have extensive
experience in doing this.
Time expectations
OED is a real-world project using multiple technologies. As such, it is unlikely that someone can make a
significant contribution in only a few hours. (If you are interested in a less significant investment, consider
working on a basic issue for the OED project.
There is a tag for good first issues.) Given this, most students need 10-30 hours to get into the project
where the time depends on their level of knowledge of the project's technologies. Student internships have
ranged from two months to a semester to more than a year if they become ongoing contributors to the project. On
a weekly basis, student internships have ranged from five hours per week to full-time. The minimum total time
for an internship is 60 hours (5 hours per week for a 12 week semester) but students generally spend more time
in total.
Please note that OED is a Humanitarian Free Open Source (HFOSS) project that does not have funds to financially
support those working on the project so all internships are unpaid. (Everyone working on OED is an unpaid
volunteer.) We believe that the quality of the
experience and the opportunity to
improve the world are sufficient for those working on OED. However, we will support any efforts you make to
receive funding to work on OED including needed documentation.
Expected background
We do not expect you to know or have experience with the technologies involved in OED. We actually expect you to
expand your knowledge while you work on the project (see below). However, a good experience depends on having a
reasonable background before starting. Thus, we expect each student to have:
- Coding experience including the creation of modest size codes. This could be from working on other
project(s)
or from coursework. While complexity is not directly related to length, if you have not written code that is
a few hundred lines then you probably are not ready for an OED project internship. While it is great if you
know JavaScript/TypeScript, it is okay if you don't as long as you have a significant experience in some
language and are willing to expand your knowledge.
- Sufficient background in computer science. If you have not taken data structures and algorithms (CS2 in the
international curriculum that is usually taken by your second year of study) then your background is
insufficient to get an OED internship. You may have taken other classes of interest such as software
engineering, databases, etc. but that is not required. If you are not a college student then something
equivalent is expected.
- The motivation and ability to be self directed in your work. This does not mean we do not provide support to
our interns but this is not a typically class. We want you to develop as a professional and that includes
being able to manage your time and efforts.
- Reasonable English language skills. While we welcome students from anywhere in the world, the project
leadership has English as their primary language.
What you can expect
While each internship is tailored to the student, all internships have these aspects:
- You will have a mentor who is a senior member of the OED project. This person will be available to you to
help in all aspects of the project.
- We will help you with any technical issues you have in working on the OED project so development
environments or technical resources should not be a problem.
- You will have a scheduled weekly video meeting with your mentor (more frequently if needed or working more
than 15 hours/week). At this meeting you will discuss your
progress, any issues you are encountering, any help needed and where you are going. These meeting typically
range for 30-90 minutes depending on what needs to be discussed. We like video meeting because it is not
uncommon to share screens to work on items. Other meetings are arranged as needed and
you are welcome to contact your mentor or other project members at any time.
- You will be guided in tasks/projects you get involved in. They typically begin with something that is easier
to accomplish such as a contained bug or improvement. They then progress to creating new code and features.
If you stay with the project long enough, you can become involved in feature design, pull request reviews
and helping mentor other project members.
- We will attempt to match your interests to OED project work. We have had students interested in database,
front-end, UI, etc. As you mature with the project, you will be given greater latitude in what tasks you can
work on and greater input into what those tasks will be. We encourage students who remain with the project
to diversify their work to get exposure to more technologies and gain greater experiences. As an
academic-based project, OED feels it is important to offer a rich learning experience for each student.
- Flexibility in when you work. We want to work with people who are self-motivated and can manage their own
time. Thus, it will be up to you to decide when you work each week as long as you are getting your tasks
done. We also understand you may be taking classes, so it is common for a student to work less during exam
weeks and then make up that time in a nearby week.
- Those working with you on the OED project will provide references for other opportunities including jobs and
graduate school.
Reaching out for an internship with OED
If you are interested in an internship with OED or want more information, please contact us at the OED internship email. If you want to begin the
internship application, please provide the following information:
- You name
- Your school, major/minor and year of study (as appropriate)
- A brief description of any relevant work you have involved in
- A brief description of why you are interested in the OED project and what you hope to get out of an
internship
- An idea of the average time you plan to spend each week and how long you anticipate being involved in the
project. If you are not sure when you will stop, the minimal time should be provided. Also, please give us
an idea of when you want to begin working.
You are welcome to provide a resume/CV in lieu of or in addition to the items above.
OED accepts internship applications at any time. We are flexible in when you start so you do not have to wait
until a particular time to begin working. You can also apply in advance to starting working at a later date.
Once we receive your information, we will review it in a timely fashion. The next step is to have a phone or
video interview to talk about your involvement in the OED project. We will expand on the information you
provided, get to understand you better and discuss options for working with OED. If everything looks positive,
we will ask for two references in support of your application. We can also put you in contact with
current/former students who have worked on the OED project so you can get their first-hand impression of working
on the OED project. Decisions are generally made soon after your materials are complete.
More information
If you have questions or thoughts, please email us.