TeamCity is a powerful and popular continuous integration/deployment (CI/CD) solution providing organisations with a great variety of features to handle their build-test-deploy pipelines. Every so often we come across customers using other CI/CD systems/services that either use TeamCity too or may want to give it a go, but hesitate due to potential very high migration effort. There are also companies out there that use a multitude of CI/CD system instances and may be in need of aggregation functionality.
This internship project will be focused on development of a prototype functionality within TeamCity that would allow users to include third-party CI/CD jobs/pipelines within TeamCity project structure, handle their build logs, test results, artifacts etc. Possibly, - support dependencies between such pipelines and TeamCity builds/pipelines.
This project has three distinct parts:
Initial research and scope definition;
Identifying and introducing all the missing pieces of TeamCity core functionality to support aggregation features in general;
Implementing a prototype of such features for a specific third party CI/CD tool (e.g. Jenkins).
We expect this project to be carried out as a full-time activity in Summer 2026.
A project requires strong knowledge of Java. Kotlin is also an option when it comes to implementation of the specific integration.
On the core functionality side, the intern will have to work with an existing vast codebase, so some ability to read and analyse complex Java code is expected.
Knowledge of TeamCity is not essential, but some familiarity with CI concepts will be an advantage.
Generally, we expect the candidate to have strong problem solving skills, be able to productively collaborate with colleagues, react well to feedback and be prepared to learn a lot of new stuff.