Java Developer

PyCharm is an integrated developing environment (IDE) for applications written in Python. Python is one with the fastest-growing number of users and the greatest number of implementations, from web-apps to big data distributed processing. And in each sphere, the integrated environment is to help the programmer solve creative problems.

What tasks does our product perform?

  • First, help with program writing. The IDE must analyze the entered code on-the-fly, highlight mistakes, suggest auto-completion variants, help switch between interconnected elements, support automatic refactoring.
  • Second, tasks related to program running: debugging, profiling, testing are made possible due to close integration of the IDE and Python interpreter.
  • Third, integration of the IDE and external systems, like dependency managing, code generating, or containerizing systems. It must be convenient for the user to work with all of these tools without leaving the IDE.

We are never at a stop and are always in the process of developing something to surprise our users.

Along with the distributed team, you will have the possibility to:

  • Evolve PyCharm as a product and discuss the new functions.
  • Elaborate the Python language support and develop means of code analysis and refactoring.
  • Develop integration of Python with popular web-frameworks, like Django, Pyramid, Flask, and others.
  • Improve launching, debugging, and profiling support for applications.

We want to see you in our team if you:

  • Have an experience of java developing from 3 years.
  • Can design and write code easy to read and support.
  • Can work both as part of the team and independently.
  • Do not stop improving your professional level, study and try new approaches and technologies.
  • Are capable and fond of solving complex problems.
  • Want to improve PyCharm and know how to.
  • Are proud of the results of your professional activity.

And particularly if you have an experience of:

  • Using Python.
  • Participating in open-source projects or managing your own projects.
  • Creating compilers, interpreters, code, debuggers, profilers, or any other tools analyzing.
  • Creating plugins for IntelliJ IDEA or any other development environments.

How we develop PyCharm:

  • Source codes are stored in Git. The PyCharm Community Edition code, as well as the greater part of IntelliJ platform, is generally available on GitHub.
  • Basically it is Java, some Groovy, and progressively more of the code is written in Kotlin. There are subsystems written in Python.
  • For teamwork managing we use our own products: Upsource for code review, Teamcity for test auto-running and product integration, YouTrack for tracking bugs and features.
  • All team members take part in formation of the product vision and planning future versions.
  • For a better understanding of our users’ needs we openly communicate with them in forums and blogs, and also at live conferences.




St. Petersburg, Russia
Moscow, Russia
Novosibirsk, Russia
Munich, Germany
Prague, Czech Republic
Amsterdam, Netherlands