CorrelAid Data4Good projects
Our Data4Good projects are at the core of our work. In our skilled volunteering projects, we connect data scientist volunteers from our network network of over 2000 volunteers with nonprofit organisations. Through the projects, our volunteers have the opportunity to apply their existing skills and gain new knowledge. At the same time, they support nonprofit organisations with solving their data-related challenges. Over 2-6 months and in teams from 2-7 data scientists, CorrelAid volunteers have tackled diverse data challenges of nonprofits: from data collection, data visualization and exploratory data analysis to automation, reporting and advanced statistical analyses using machine learning and deep learning techniques.
Learn more about our projects so far here:
Several actors are involved in a CorrelAid Data4Good project. Here is a small overview with the most important terminology.
NPO / the organization
our non-profit partner organization
the contact person at the NPO. Usually we have one or two contact persons who we will talk with.
CorrelAid as an organization
someone who oversees the project from the time of acquisition to the final follow-up. Is not part of the project team, i.e. does not do data analysis. During the project work phase, the Project Coordinator is responsible for getting updates from the project team. Typically either Frie from the remote office or a CorrelAidX chapter lead.
Project lead / team lead
Leads the implementation of the project as part and primus inter pares of the project team. Typically also actively contributes to code or other outputs of the project (not solely 'team management' role).
Project team / team members
Volunteers of the CorrelAid network who are involved in the implementation of the project
a team member who is not as experienced yet.
Team mentor / reviewer
someone who (temporarily) consults the team on the project, giving tips on tools and best practices and reviewing existing work.
A typical CorrelAid project goes through 6 stages. Those are sketched out here to give a high-level overview. More detailed content can be found in the rest of the manual.
CorrelAid has come in contact with a potential partner organization / NPO:
- they've contacted us over email
- we have met them at an event
- we have approached them
- someone else put us into contact with them
The project coordinator has established communication with the organization. Together with the contact person(s) from the NPO, they figure out whether and if so, how CorrelAid volunteers could support the NPO with their data challenge. Based on this information, the project coordinator develops the project call for applications in close coordination with the contact person(s) of the NPO.
The project coordinator sends out the call for applications via the newsletter and collects the applications. Once the application deadline has passed, the project coordinator looks for a selection committee who then select a team.
The project lead together with the project coordinator and the support of the relevant tool administrators sets up the project tooling and communication channels. The project coordinator together with the project lead and the NPO starts planning the kickoff.
The kickoff marks the official start of the project. Here, the NPO, the project coordinator, the project lead and the project team come together for a weekend (or an online event) to get to know each other, learn more about the background of the project and plan the project.
The project team works on the project, with regular feedback loops with the organization. The project team leader leads the team as primus inter pares and is responsible for keeping the project running. From time to time, the team gives an update to the project coordinator to ensure that no problems exist and that the project is running smoothly.
The project team hands over the finished analysis / visualization / .. to the NPO.
Feedback is collected by the project coordinator from both the NPO and the project team members.
Scoping & Call for Applications
Onboarding & Kickoff
🟨: optional / in reduced capacity
- during the project work phase, the project coordinator regularly checks in with the project team to make sure everything is going smoothly. They are also available for support.
- Ideally the project coordinator should find a project team lead during the scoping phase by directly asking people whether they'd be interested in the role. In this case, the team lead can be involved in the scoping and team selection processes.
Team Lead: As a team lead, you lead the implementation of the project as part and primus inter pares of the project team. In addition, you have some organizational tasks: Together with your team mates, you agree on an internal organization of your team, e.g. how often you have check-ins, how to organize the repository, how to keep track of progress, how often to talk to the NPO partner organization etc. Of course, you are not solely responsible for implementing those decisions but organize the team to be able to do so. Note: you do not need to be a technical expert to be a team lead, it is more about organizing a team and facilitating and following up on discussions.
Team member: You are able to structure your own work and learn new technologies and tools (mostly) on your own. This doesn't mean that you can't have questions for your team mates or prefer learning/working together with someone else - especially when dealing with technologies/techniques that are new to you. But in contrast to a team trainee, you are confident in finding resources that will help you and acquiring knowledge on your own.
Team trainee: As a team trainee, you do not have much experience with most of the technical tools that are used in the project and/or you only have very little experience with data analysis projects. You'll probably need a lot of support from your fellow team members, e.g. in setting up the project on your laptop or finding tasks that fit your skills (e.g. small data cleaning tasks). Note: you are not automatically a team trainee if this is your first CorrelAid project.
If you are still unsure which role to choose, choose the one which feels most appropriate and write a sentence in one of the open text fields that you were unsure.
Beginner = I have never done this before / I have never written a single line of code. User = I have gained some first experience in this field / I have written code on my own. Advanced = I have gained some experience / I have written complex scripts Expert = I know my way around very well / I write my own functions and packages.
Here are some practical tips:
- Your motivation matters and it is an important component in the score but also in the qualitative assessments committee members make when deciding between equally qualified applicants. An application without any or a very meaningful "why" will probably be discarded, regardless of whether you have unsuccessfully applied in the past. Hence, please write about what motivates you for the project. Also, if you have a personal connection to the topic or the work the NPO is doing, please write it in the motivation. If you do not have experience expressing your motivation in a small paragraph of sentences, you can write bullet points instead. Here are some questions that can help you come up with something:
- Why do you want to participate in a Data4Good project in general? Why do you want to spend 2-4 additional hours per week in front of the computer?
- What motivates you about the organization? Have a look at their website. Why do you think their work is important?
- Do you personally relate to the work of the partner organization? If so, how?
- If you are new to data science but have job experience from a different field, please include soft skills and project management experience. Skills are not restricted to technical skills!
- If you are part of a marginalized group, don't undersell yourself! :) Take a look at the experience scale and role descriptions above and when in doubt, take the more advanced category/role.
As a project mentor / reviewer, you might join a team (temporarily) to consult them so that they can improve the quality of their work by following best practices, hereby ensuring the long-term impact and sustainability of the project. This might include but is not limited to:
- input and advice on appropriate analytical methods and models, e.g. which time series model would fit best the problem
- recommending tools like packages, linter, code styler, documentation helpers, ...
- give feedback on quality of documentation and how to improve it
- review code and give tips to improve code quality, e.g. how to better structure code into functions or following better programming patterns
- advice on how to set up the project, e.g. how code and/or data can be better structured
Time commitment: depends on your availability and the project's needs. Typically a one-time review / support is enough which should be a couple of hours (3-4 hours incl. reviewing the project, a meeting with the team and a follow up). In certain circumstances and if you want, you might join a team as a mentor for a longer period of time.
Background and your role: With our projects we want to do two things: support the partner NPO with their data challenges and provide learning opportunities for our volunteers. Learning about and implementing best practices is definitely a good learning that volunteers can take away from our projects. Plus, best practices will improve the quality of the output for our partner NPO. However, given the limited time resources in the context of volunteering, it's sometimes hard to do everything right. So whenever making recommendations, you should heavily prioritize what really will help the project in the long run: Maybe the inconsistent code styling really annoys your "clean code" heart but you know good documentation will have a higher impact on the overall quality and sustainability of the project.
In addition, as a team mentor, it is important that you consider that not all team members are as experienced, knowledgeable and skilled as you. Please a) have empathy with your fellow volunteers who are working on the project, especially those with less experience/skills, b) appreciate what they have done so far and the effort they put in and c) properly explain why things are important - it might not be obvious to less experienced folks. Have empathy - always remember that you also started out as a beginner once!
Finally, if your recommendations are not accepted / implemented, talk to the project coordinator to see what can be done so that the long-term sustainability and quality of the project are ensured.