The scope of this is so much bigger than just hiring a developer. During his years of involvement @antonin_d has grown from a junior developer to control almost every aspect of the project from software engineering to web site design to web site content to producing events to mentoring interns to hiring/firing to ... - well, it would be hard to think of an aspect of the project that he's not involved in. If he's really scaling back to zero, that will leave a huge hole to fill.
Hiring someone to do all that is a recipe for burnout (as Antonin can probably attest to). Hiring someone to immediately be a project leader or lead developer is unrealistic too. Better to start someone with a limited remit and grow them if they turn out to be a good fit.
| Martin
September 4 |
- | - |
This role will focus primarily on general maintenance tasks, such as managing the GitHub repository, triaging tickets, and reviewing pull requests
I would have thought that the primary focus would be bug fixing, security updates, and quality improvements. Once they're up to speed, release manager is a thankless role that could be offloaded to them too.
Triaging tickets could be done by a volunteer who is familiar with OpenRefine. It doesn't need to be a developer.
Merging PRs and managing the Github repository isn't going to happen until they've gained commit privileges, although they certainly can participate in PR reviews.
Recruitment Process: How can we best involve you in the recruitment process to ensure the new developer aligns well with our project culture and technical expectations? Do you have any experiences or suggestions from other open-source projects that could guide this recruitment? How can we ensure the person is technically competent and understands OpenRefineās technical direction?
Hiring is very difficult work. Typically a developer would be hired by a development manager who had experience in doing that kind of work (and hopefully a network of contacts which could be leveraged). Who is going to fill that role here?
Authority and Decision Making: The new role will involve critical tasks such as merging pull requests and making technical decisions. How can we ensure these permissions are granted appropriately to a newcomer? What steps should be taken to help this individual gain your trust? Should this person go through a formal vote as drafted in the new governance?
From the point of view of gaining commit privileges, there's nothing special about who they're employed by. They go through the same process as everyone else. As an aside, commit privileges aren't needed to be able to do useful work.
Reporting Structure: Although the Advisory Committee will manage the contractual aspects of this role, effective collaboration with other developers is crucial. How do you envision this reporting and collaboration structure functioning best within the team dynamics? What are your suggestions for onboarding this person into the project?
The current team collaborates in a pretty loose fashion, so I'm not sure anything special is needed, but this person is going to need more than just "contractual aspects" managed. They will require technical oversight and active supervision by someone familiar with their work. I don't know how all this is done currently, so perhaps there's stuff going on behind the scenes that can be applied to the new person.
We want Antonin's replacement to start in 2025.
For the reasons I mentioned at the top, thinking of this as "Antonin's replacement" is a mistake, in my opinion.
Tom