FYI News

JetBrains is Hiring for TeamCity – Join Our Team

Greetings everyone!

We hope everything is going well for you. For us the last few years were quite significant. TeamCity has become an important tool for many companies, the demands of our customers are growing and to meet them, we need to expand as well. Our team is far from small already. We have more than 20 people working on the product full-time, but we need more!

TeamCity logo

So we’re looking for the following qualified candidates:

1. Senior .NET Software Developer

The position is open in Saint-Petersburg (Russia), Moscow (Russia) and Munich (Germany).

The fact that TeamCity is written in Java does not prevent our product from being a popular tool in the .NET world. For this position we’re looking for a senior developer with a passion for .NET technology; a person who will improve and evolve our .NET integration, who will be able to bring new ideas and new features to the product. .NET integration in TeamCity covers a wide spectrum of technologies: from the integration with build tools like MSBuild, NUnit, and others, to integration with NuGet or Version control systems like TFS, not to mention the add-in to Visual Studio based on the ReSharper Platform.

For this position we require very good knowledge of C# and .NET development stack. Familiarity with Java is a big plus. Please see additional details and requirements on our jobs page.

2. Senior Support Engineer

The position is open in Saint-Petersburg (Russia), Moscow (Russia) and Munich (Germany).

TeamCity is quite powerful under the hood and as with any powerful tool, there are a lot of questions about the most optimal usage of the tool. We receive lots of feedback on our tracker, forum, support channel, not to mention Stackoverflow and Twitter. While we’re working hard to make the product as simple as possible, the amount of feedback grows constantly.

In this position, your task will not only be to help our customers solve their problems, but also to identify common problems and report them back to the team. Please see additional requirements for this position on our jobs page.

3. Senior QA/Test Engineer

The position is open in Saint-Petersburg (Russia), Moscow (Russia) and Munich (Germany).

It’s a challenging task to verify functionality in products like TeamCity. The software development field is changing constantly, new tools are arriving, new technologies, new integrations. You have to know a lot about completely different things. One day you’re trying to reproduce an issue with Git, the other day you’re verifying how recent changes in the TeamCity Amazon integration work. To add to that, we do not have strict specifications, so sometimes there’s no definite answer to how the system should behave and we need to decide on it together.

Given the complexity of the task, for this position we are looking for an experienced QA engineer with a very good technical background and deep understanding of testing process. Please see more details on our company jobs page.

What it means to work at JetBrains.

If you want to apply for one of these positions, then you should know more about the team and processes accepted in our company.

First of all, traditionally at JetBrains we’re trying to avoid complicated processes and bureaucracy; we tend to use the agile approach, but instead of using the whole set of agile practices, we only adopt those bringing the most value to the team. For instance, the only mandatory meeting for the TeamCity team is the daily stand-up. We also encourage our developers to use feature demos.

In the TeamCity team we are strong believers in continuous integration and continuous deployment. For example, we upgrade our production TeamCity server to a fresh version from the trunk once a day. This production server builds every JetBrains product, from IntelliJ IDEA and ReSharper to TeamCity itself (the server has about 250 agents, producing more than 5000 builds daily which amounts to about 120K builds per month).

It’s not easy to keep the production server stable and careful planning is required when significant changes are introduced, but it pays off. In addition, it brings constant feedback on the new features from all JetBrains developers.

“Eat your own dogfood” is a JetBrains’ mantra. When we plan a feature in the product, we always consider our own ability to use it. If we can’t use it right away, we try to “sell” it to other JetBrains teams, and/or to make it an open source plugin and share it with the outside world. Either way, the feedback from real users helps choose the design of the feature and avoid silly mistakes.

Unit and integration testing, static code analysis, code coverage, refactoring, code review – these are not empty words for us. We ourselves use these practices all the time.

Most JetBrains developers work in Saint-Petersburg and Munich. Besides the flexible work environment, the company offers free lunches, snacks, beverages, coffee, tea, etc, etc. We are not particularly fond of open space, so our team members work in spacious separate rooms.

We do hope you have enough information to make the right choice. If you’re interested in one of the positions above, please submit your CV on our jobs page: https://www.jetbrains.com/company/jobs/.

For a software developer position, a link to open source projects with your participation or examples of your code would be helpful as well!

Join us and happy building!

image description