Skip to content

Commit 3964dd7

Browse files
authored
Merge pull request #277 from adrn/rse-user-dev-support
Phase 3 funding: Research Software Engineer: User and Developer Support
2 parents 1afe5df + caa6b1c commit 3964dd7

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
### Title
2+
3+
Research Software Engineer: User and Developer Support
4+
5+
### Project Team
6+
7+
- Moritz Guenther
8+
- Adrian Price-Whelan (original plan)
9+
10+
11+
### Project Description
12+
13+
A research software engineer (RSE) position to
14+
tackle both user-facing and developer-facing support issues, as identified and
15+
prioritized by the Astropy community and infrastructure teams. The RSE would have a
16+
"manager" who is an existing Astropy contributor with existing knowledge of the Astropy
17+
core package, ecosystem, infrastructure packages, and community. The RSE is expected to
18+
eventually work independently, but with feedback from the Manager and Astropy community.
19+
We envision about an equivalent ~50% FTE appointment, but that can be scaled up or down
20+
based on the available budget.
21+
22+
### Project / Work
23+
24+
#### Research software engineer
25+
26+
The Astropy Project is seeking to hire a full-time or part-time research software engineer on a fixed-time contract to develop and implement new features that the community has identified as high priorities in the roadmap but that the volunteer contributors do not have the capacity to deliver, as well as address smaller, but long-standing bugs and issues in the astropy core package and the coordinated packages.
27+
28+
The broad scope of work for the RSE includes any efforts to support both Astropy users
29+
and contributors,
30+
implement more specific projects related to Astropy core subpackages (some examples
31+
given below). In particular, the RSE shall tackle a number of long-standing issues and
32+
bugs as listed in the issue trackers for the core package and the coordinated packages;
33+
more bugs and issues are available than can be addressed by this position, so the
34+
choice of which ones to address will be guided by community input, and the experience
35+
and expertise of the RSE, under the manager's supervision.
36+
37+
The RSE position is distinct from the Software Operational Support Specialist (SOSS)
38+
position in that the RSE is expected to take on and complete discrete *projects*, rather
39+
than provide continuous support (e.g., monitoring issues, helping new contributors,
40+
etc., as was included in the SOSS scope of work).
41+
42+
On the other hand, the RSE shall work on the items listed on [Astropy
43+
Roadmap](https://github.com/astropy/astropy-project/blob/main/roadmap/roadmap.md), that the
44+
community has already prioritized, but not yet found the resources to implement.
45+
46+
Example projects:
47+
* *Implement robust benchmark reporting for pull requests* ([drawn from the Astropy
48+
Roadmap](https://github.com/astropy/astropy-project/blob/main/roadmap/roadmap.md)): This
49+
project would enable a way of evaluating the performance impact of pull requests by
50+
tracking and benchmarking existing performance of common tasks (see, for example, the
51+
old [astropy-benchmarks](https://github.com/astropy/astropy-benchmarks)).
52+
* *Implement integration testing for core, coordinated, and infrastructure packages*
53+
([drawn from the Astropy
54+
Roadmap](https://github.com/astropy/astropy-project/blob/main/roadmap/roadmap.md)):
55+
Ensure that coordinated and infrastructure packages have integration tests that check
56+
the joint usage of Astropy and these other packages together, rather than individually
57+
(as is often the case now).
58+
* *Restructure the Astropy developer documentation*: The current developer documentation
59+
pages have a wealth of content aimed at both new contributors and expert technical
60+
engineers, but it is mixed and hard for contributors with different skill levels to
61+
easily find the content most appropriate for them. The goal of this project is to
62+
restructure the documentation pages to provide easier pathways for potential or
63+
existing contributors with different skill levels to find relevant developer
64+
documentation they need to make a contribution. Relevant issues:
65+
[#11620](https://github.com/astropy/astropy/issues/11620),
66+
[#11621](https://github.com/astropy/astropy/issues/11621)
67+
68+
#### Manager
69+
Together with the RSE role, there will be a funded manager position filled by an experienced member of the astropy project with commit permissions in the main repository. The manager will be responsible for the following tasks:
70+
71+
- Onboarding the RSE to the project and the community.
72+
- Providing guidance and feedback to the RSE.
73+
- To reduce the burden on volunteer maintainers, the funded manager will perform a first review where appropriate, to keep the effort needed for the sub-package maintainers to a minimum. We expect this to be one of the main responsibilities of the manager.
74+
- The manager organizes the community input on which topics and road-map issues to prioritize for the RSE.
75+
- Report progress, issues, and challenges to the Astropy Project community.
76+
77+
The manager is funded for 0.1 FTE. This time will be spread that over the same period that the RSE is active, the managers work is not evenly distributed over that period, though. We expect considerably more involvement in the beginning with onboarding and the first few PRs, and relatively less involvement in later phases; however, on average over a 12 months period, the manager's level of effort is expected to be 0.1 FTE; for example, if the RSE contract runs for 9 months, this could be distributed as, 8 h/week for the first three months, 4 h/week for the next three months and 0 h/week for the last three months of the year (when the RSE is no longer active). The exact details as to be determined by the manager and the RSE, it is the manager's responsibility to track their effort and report it to the Astropy Project.
78+
79+
80+
### Approximate Budget
81+
- Currency: US $98,155.29
82+
83+
**Position**: Research Software Engineer
84+
85+
Budget breakdown (nominal):
86+
87+
- Contractor fees: $75000 (approx. $80/hour)
88+
- TOTAL = $75000
89+
90+
**Position**: Manager of Research Software Engineer
91+
92+
- Moritz Guenther, funded by sub-award to MIT
93+
- $23,155.29 for 0.1 FTE (This time is distributed over the same time that the RSE is active. If the RSE contracts runs for, e.g. 6 months, 0.1 FTE is equivalent to 1 day/week for 0.5 year.)

0 commit comments

Comments
 (0)