Development Projects

Our main service is the development of software, specific to your needs.
We offer two distinct approaches:
1. A short term project with a duration up to 6 months; or
2. A long term project with a duration longer than 6 months.

The short term focus on small scale and clearly defined, immediate tasks, while long term task require large scale efforts and can be more open-ended.Please note that our offer is limited to users from any higher education institution of Baden-Württemberg.

Short Term

For a short term project, we collaborate with you on achieving a small- to medium-sized goal. A non-exhaustive list of possible goals could be optimizing a specific function, or module in your code, enabling shared memory parallelization (single CPU/GPU) or distributed memory parallelization (multi CPU/GPU), or more usability targeted goals, like platform independent build systems, or Python/Julia/... bindings.

If that matches your needs, you can jump directly to our request form. If you are unsure if we can cover your issues, you can take a look at our projects, or contact us informally.

This service is provided free of charge to any user from Baden-Württemberg.

Project Workflow

The first step to access our services, is to fill out our request form. It is only required to fill out your contact information, as well as a description of your problem You can also provide additional information, e.g. scientific field, programming languages, etc., although this is not necessary, and any missing details will be filled out by us at a later stage.

After receiving the request, we review it and schedule a consultation between you and our team members. This helps us to understand your problem in more depth and concretize it into manageable work items. Based on that we formulate a work plan.

We provide you with our work plan, and encourage you to review it. The document contains technical details, and describes the problem and the intended solution on a technical level. We also define milestones and deliverables, which allows us to gather feedback from your side on our progress.

In our work plan, we also formulate contributions from your side. These are typically smaller tasks, mainly intended to ensure our progress aligns with your expectations. The tasks may include granting us code access, providing necessary domain knowledge, or testing solution. Additionally, we define how the solution is disseminated back to you. In the most straightforward case, this just means that our code will be merged into your code base. For more complex settings, e.g. closed source code, other approaches might need to be defined.

Long Term

Long term projects are typically initiated as follow-ups from short term projects. If a short term project has a more explorative character, then the long term project can be used to bring the found solutions to a larger code base. However, they might also be initiated directly, if, for example, during the consultation phase the scope of the problem exceeds our time limit for short term projects.

The key difference to the short term project is that long term projects require third-party funding. Applications for funding can be prepared with our help.

The management of a long term project is determined on a case-by-case basis, depending on the requirements of the funding agency.

Recognition

Software development plays a major role in modern science, but it lacks the corresponding recognition. Active efforts are underway to change policies, but for now, we want to make the work of RSEs recognizable in the current academic landscape. This of course means through publications.

As such, we kindly ask you to include our team members as co-others if you plan to publish

  • papers using software for *application code* developed by RSEs on the project; or
  • papers describing software for *library code* developed by RSEs on the project.
Zwei Personen arbeiten mit einem Laptop im Serverraum.
Request Support

Request your short term project now.

More