JetBrains is a Way of Life

This is a place where bright people find interesting software development challenges to solve on a
daily basis. If programming is your joy and passion, and code quality is as natural to you as
breathing, at JetBrains you are guaranteed professional growth, unlimited creativity and the Drive
to Develop.

We are hiring

Kotlin is a modern programming language for platforms Java, Android,
JavaScript and Native (LLVM). It was first released in 2016, and now the
language is rapidly growing in popularity. The project is based on pragmatic
principles: a convenient range of tools (IDE, build tools, etc.),
compatibility, code supportability and ease of learning. Our job is to make
users happier. We support and develop 3 back-ends: JVM bytecode, JS and LLVM
and the set of libraries for them. Much attention is paid to the possibility
of cross-platform code development.

IntelliJ IDEA appeared on the market for Java software developers 11 years
ago. It
was the first development environment to implement automated code
refactorings.
Today IntelliJ IDEA still drives innovation in software development, making
thousands of programmers more productive. It is the only commercial IDE in
its
segment to successfully compete with multiple free alternatives, year after
year.
IntelliJ IDEA includes various development tools for other languages such as
Ruby,
Groovy, Scala, Python and PHP.

Your responsibilities:

As part of our team, you will help develop support for programming languages
already
available in IntelliJ IDEA as well as additional languages.

Requirements:

3 or more years of working experience in Java programming

Deep understanding of OOP

Multithread programming experience

Ability to optimize and refactor other people's code as well as your
own

TeamCity is a popular continuous integration and build
management
server used by thousands of developers throughout the world. This server
application
is built using the J2EE technology and allows running multiple builds and
tests
under different platforms and environments simultaneously.

As a team member, you will:

improve the support for .NET technologies in TeamCity making the product
more
powerful for .NET developers.

provide technical support for TeamCity customers.

We are looking for an expert who is:

highly skilled in both Java and .NET

able to take responsibility for developing components/subsystems of the
complicated server product

well-informed about the .NET technologies world and capable of analyzing
new
trends of the whole ecosystem

Huge amounts of data are being collected and processed nowadays, and this
trend is here to stay. Understanding data is crucial for many industries,
which is why data scientists from various domains come to programming, using
languages like R and Python, and utilizing different tools to do this
work.

We at JetBrains are creating DataLore, an intelligent workbook based on
Python ecosystem, which helps data scientists be more productive and focus
more on actual data analysis to address the difficulties data scientists are
facing. Here are some examples:

In addition to proficiency in data science and statistics,
familiarity with a variety of Python libraries is now a requirement.
DataLore provides an intelligent code editor with intention actions,
allowing data scientists to be productive even without reading through
the complete documentation for the tools and libraries they use. Guiding
the user through a data analysis problem, DataLore suggests possible
actions, identifies suspicious code, checks that the stated objective is
achieved, and may even propose a better way to solve the problem.

Team collaboration is essential for any project. Currently,
available tools such as version control systems and shared folders make
it possible but do not really make it easy and rarely offer any
real-time collaboration features. DataLore will provide a set of
dedicated collaborative services for computational workbooks.

Data processing and computations often take lots of time. Existing
tools don’t track computation relationships and dependencies, and cannot
perform calculations incrementally. DataLore offers such capabilities
and helps you save time by getting rid of redundant computations.

These are just some of the challenges we are solving or intend to solve with
DataLore. The product is still in its early stages, but we have lots of
plans and ambitions as well as broad experience in working with code,
creating smart code editors, and helping users increase their
productivity.

We use GWT + JavaScript for the client-side, Python + Java (Servlets + and
others) for the server-side. We have a complex distributed backend on a
modern Java + Spring with many complex algorithmic components.

We are looking for a Senior Software Developer, who will help us to build
new features and develop the product.

PyCharm is an integrated developing environment (IDE) for applications
written in Python. Python is one with the fastest-growing number of users
and 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 a 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;

We'll be happy to see you as a part of the team if you:

have at least 3 years of Java development experience in commercial
products;

know how to write thread-safe code;

familiar with algorithms and data structures;

understand principles of OOP and can create extensible API;

know how to automatically test your code;

able to work efficiently as a part of a team and independently.

We'll be especially glad if you:

familiar with macOS;

have hands-on experience with iOS or macOS development using Swift or
Objective-C;

developed plugins for IntelliJ IDEA, Eclipse or NetBeans.

How we develop AppCode:

AppCode is based on the IntelliJ platform - a foundation for many JetBrains
products,
such as
IntelliJ IDEA, WebStorm, PhpStorm, RubyMine, PyCharm, CLion.

The source code is stored in Git repositories, some of which are available on
GitHub. Most
of
the code is written in Java, some in Groovy and Kotlin;
low-level libraries use C/C++ (for
instance, LLDB integration). The code is covered by automated tests, peer-reviewed and
extensively tested by QA. Thanks to this, we keep the quality of the product
and
avoid
regressions.

The development process is fully transparent: team members can take part in
any task,
always
participate in feature discussions and version planning. And to better
understand
our users'
needs all team communicates with them in forums, issue tracker and
during
conferences, discuss
suggestions and help with problems. Listening to the users and communicating
with
them openly is
one of the most important parts of the JetBrains culture.

CLion is a cross-platform IDE for developing in C/C++ as well as
Kotlin/Native and Rust. It supports the CMake build system and GCC/Clang
compilers, and integrates with GDB and LLDB debuggers.

One area of priority for CLion is providing support for embedded systems,
microcontrollers, and IoT development.

As a part of our team, you will:

advance CLion as a product, take part in discussions, and help
develop new features;

implement support for tools for embedded development, from low-level
integration to Swing UI.

Please apply if you:

have professional development experience in embedded/IoT/automation projects;

are passionate about making life better for embedded systems developers;

have developed cross-platform systems before;

are experienced in multi-threaded systems development;

understand the principles of OOP and can create modular and extensible API;

are willing to learn and develop in Kotlin/Java;

know how to automatically test any kind of code;

are able to work efficiently both independently and in a team.

We’d be especially thrilled if you:

have experience with Kotlin/Java or other managed languages;

are familiar with Unix, Windows, and OS X;

have experience developing plugins for IntelliJ IDEA, Eclipse, or
NetBeans.

How we develop CLion:

CLion is based on the IntelliJ Platform
which underpins many JetBrains products, including IntelliJ IDEA,
WebStorm, PhpStorm, RubyMine, PyCharm, AppCode, and many others.

The source code is stored in Git repositories, some of which are available
on GitHub.
Most of the code is written in Java, with some in Groovy and
Kotlin;
low-level libraries use C/C++ (for instance, LLDB integration).

The whole development process is transparent and everyone can take part in
any of the tasks. The team constantly communicates face to face and via
Slack/Skype. All code changes are covered by developers with
automated tests,
peer-reviews, and then
extensively tested by the QA team.

Additionally team members communicate with our users
directly, discussing features and how we may be able to help to solve
their problems. We also meet our users during conferences to discuss
their ideas and problems. Listening to our users and communicating with
them openly is one of the most important parts of the JetBrains culture.

If we have sparked your interest, don’t hesitate and send your CV right
away!

GoLand is JetBrains’ new IDE for Golang. Its first trial version was
released in December 2016.

To help us improve GoLand, we need an awesome Java Developer passionate
about making Go developers’ lives better.

Our ideal candidate codes both Java and Go and treats user interfaces as
an important part of software. They know when it is preferable to use an
IDE and when it’s better to choose vim and grep in console. They are
responsible and can maintain a balance between working on routine
development tasks and doing fun stuff.

Guide:

Please write a short story about yourself and your projects and attach a
link to your GitHub account (or send us some code samples you are proud
of). If you aren’t familiar with JetBrains, please look at the source
code of IntelliJ Platform. Learn what plugins are and how they are
written. Also look at how we work with our customers via YouTrack.

Our priorities in enhancing CLion include: high-quality support of C++ and
C standards; maintenance of cross- and remote development; maintenance of
embedded systems development; and support for profilers, testing libraries,
and other tools. We also plan to expand the list of supported assembly
systems such as CMake, makefiles, etc.

As a part of our team, you will:

Perform functional and investigational testing of different components
of the IDE;

Perform usability tests;

Work with users in our bug tracker and initially process requests;

Reproduce issues in both existing and new functionality in different
environments; and

Participate in discussing new functionality, planning, and product
releases.

We’ll be happy to see you join our team if you:

Think software products should be high-quality and user-friendly;

Are familiar with software development processes;

Are familiar with C or C++ (or other OOP languages) enough to create
simple applications and understand others’ code;

Can find and reproduce complicated functionality issues;

Are ready to communicate with users and help resolve their problems;

Are fluent in English and Russian with advanced writing skills;

Are a good team player but also work well on your own.

We will be especially happy if you:

Have experience in QA and customer support for commercial software tools;

Are familiar with Unix, Windows, and macOS; and/or

Are familiar with software development tools such as MS Visual Studio,
QtCreator, IntelliJ IDEA, Eclipse, or NetBeans.

Here’s some information on who is already developing CLion and how:

CLion is based on IntelliJ Platform which also serves as the foundation for
other JetBrains products including IntelliJ IDEA, WebStorm, PhpStorm,
RubyMine, PyCharm, AppCode, DataGrip, and GoLand.

The whole development process is totally transparent, and everyone can
participate in any task. Team members are in constant communication with
each other, both face to face and via Slack. All changes are covered by
automated tests, and the code is reviewed before proceeding to manual
testing. We perform thorough functional testing, usability tests, and
investigational testing to ensure high functionality and decrease the
possibility of regression.

All team members communicate with our users, discuss newly proposed features,
take part in troubleshooting, and specify bug descriptions. We also
interact with our customers on web forums and trade conferences. Being
open to communication with users is part and parcel of JetBrains culture.

TeamCity is a continuous integration and continuous delivery server used
by thousands of development teams throughout the world. TeamCity
integrates with all major development frameworks, version control
systems, issue trackers, IDEs, and cloud services, providing teams with
an exceptional experience from a well-built intelligent tool.

Our product team is distributed across several locations: Munich
(Germany), Prague (Czech Republic), Saint-Petersburg and Moscow (Russia).
At the same time, we have a lot of customers in the United States. To
better handle the needs of these customers, we are looking for a US based
senior support engineer with great communication skills, a passion for
helping users, and the ability to solve their problems, while most of the
time working remotely from the main team. The ability to collect,
systemize, and provide user feedback back to the development team is a
huge plus.

JetBrains TeamCity, a popular continuous integration and build server, looks
for a
support engineer who will work as part of the development team and will:
make TeamCity users happy by helping them configure TeamCity, set up their
builds
and solve environment problems; provide feedback to the TeamCity team based
on
the support cases in order to improve the product: make it easier to use and
better
address customers needs. See example of the support cases at
teamcity-support.jetbrains.com/hc/en-us/community/topics

Responsibilities:

Provide technical support for TeamCity via email, community forums,
social
media, occasionally in the phone calls

Reproduce customers' issues and communicate them to the development
team

Contribute to the product development based on the customers' common
problems
and needs

JetBrains is looking for a support engineer to join plugins repository
team in one of the JetBrains offices (Russia: St. Petersburg, Moscow,
Novosibirsk). The plugin repository team is a meta-group uniting multiple
JetBrains teams members, all committed to providing more pleasant
JetBrains plugin development, products customization and extensibility
experience consolidated along the entire portfolio of JetBrains products.
You will be communicating with a lot of colleagues from IntelliJ Platform
team, .NET team, TeamCity, Marketing, and other teams.

As a support engineer for the plugins repository project, you will be
responsible for helping plugin developers keep being successful while
developing plugins and extensions for JetBrains products (mostly IntelliJ
Platform-based IDEs, but also some .NET and a bit of TeamCity as they are
all hosted in a single plugins repository). As a part of your daily
routine, you’ll be supporting plugin developers on different mediums, as
well as reviewing all new and updated plugins to ensure their quality and
conformity to the rules enforced from JetBrains side.

Responsibilities:

Review new and updated plugins in the plugins repository so that only
those conforming to the guidelines are approved (checking plugins
against a list of requirements, such as compatibility, usability,
security, description/naming rules, and other factors);

Reproduce users' issues and create bug reports for them, work with
the bug tracker;

Moderate comments left by end-users and plugin authors;

Provide support and guidance (depends on your technical skills) for
IntelliJ Platform plugin developers via email, community forums, and
social media;

Work with plugins repository team on improving the plugin development
ecosystem and tools provided to plugin developers;

We’re looking for a Developer Advocate position that will be focusing
mostly in the area of web technologies, including but not limited to
JavaScript, TypeScript and frameworks such as Angular, VueJS, etc.

What you will be doing:

Creating content, be it tutorials, screencasts, etc.

Writing code

Teaching people how to use technologies and our tools

Speaking at conferences and helping at booths

Interacting with our users

Providing feedback to product teams

What we expect from you:

5+ years of development experience, preferably in the technologies highlighted

Great communication skills

Excellent command of English

Strong writing style

Teaching skills

Ability to quickly understand and experiment with new technologies

We’re looking for people that do not like to be micromanaged, have the
discipline to plan tasks and execute themselves and enjoy the freedom to
work.

If you meet these requirements, and more importantly believe in tooling
and the work we do at JetBrains, then this might be the position for you!

JetBrains delivers tools that make professional software development a more
productive and enjoyable experience. IntelliJ IDEA is our flagship IDE for
productive Java development that comes in two editions: the free and
open-source IntelliJ IDEA Community Edition — for JVM and Android
development, and IntelliJ IDEA Ultimate — for web and enterprise
development.

IntelliJ IDEA is a product loved and used by hundreds thousands of
developers. But we know how much more we can do to bring more value to
existing users and promote the product to new users.

We want to strengthen IntelliJ IDEA marketing by adding more people to the
team that would allow for better focus in both product development and
marketing outreach.

JetBrains delivers tools that make professional software development a more
productive and enjoyable experience. GoLand is the codename of our new Go
IDE announced less than a year ago. Still in beta stage, GoLand is already
used and loved by thousands of developers.

Approaching the upcoming release, we are looking for a passionate, creative
and open-minded person to join the product team to focus on both product
development and marketing outreach.

The JetBrains Marketing Research Team is looking for a Data Scientist. We
are engaged in a wide range of projects for our Product, Sales, and
Marketing departments. For our research, we use various internal/external
data sources and statistical analysis. Our goal is to supply our product,
marketing, and sales teams with the necessary data to help them improve
pricing and marketing strategies and make informed decisions about
product changes.

As part of the team, our data scientists ensure that JetBrains makes sound
financial decisions. You will be involved in exploring a range of
different business models as the company grows.

You will:

Develop advanced financial models for sales prediction and pricing.

Evaluate the performance of our volume discounts and the special
offers we have provided to customers and suggest improvements for
maximizing revenues.

Evaluate the price sensitivity of different customer groups and
regions and provide suggestions for improving the pricing policies.

Conduct research in order to answer questions about product prices,
company revenue, and the effectiveness of sales and marketing
activities.

Work closely with other analysts and company leaders to understand
and shape key priorities.

Define and track meaningful metrics to support decision-making.

Develop and produce regular insightful reports as needed.

Report on the work done and make presentations of the results for
research initiators.

JetBrains creates intelligent software solutions for professional
developers. We are looking for a new person to join our Community Support
team. The team supports accredited educational institutions,
non-commercial open source projects, user groups and IT events by
providing free licenses for JetBrains products.

As a part of our team, you will:

Communicate with developers, teachers, user group leaders, event
organizers: determine if their applications meet our requirements,
help them choose a support program, describe various licensing
options;

Discuss special licensing terms with colleagues from our sales and
marketing departments;

Work within the team to enhance the efficiency of our community
support programs.

Requirements:

Excellent English writing skills (90% of our clients are international);

Diligence, responsibility, punctuality (a major part of our work is
routine application processing and business correspondence);

Ability to work in a self-directed manner (we expect you to meet
deadlines and manage your time efficiently);

Good teamwork and communication skills, analytical skills, and an
ability to learn fast;

Understanding of our company’s products, their purpose and
differences between them;

JetBrains Marketing Research Team is looking for a Full-stack developer.

We are engaged in a wide range of projects for our Product, Sales and
Marketing departments. For our research we use various internal/external
data sources and statistical analysis. To gather and process data we have
built up a comprehensive distributed microservice system and we are looking
for someone to develop new components, enhance existing ones and maintain
the infrastructure.

Our goal is to supply product/marketing teams with the necessary data that
helps improving pricing and marketing strategies, making reasoned decisions
on product changes.

As a developer in our team you will be:

Engaged in development and testing of the processing system, adding new
components and enhancing existing ones.

Working on web-frontend for representation of data gathered from
various sources.

JetBrains is looking for a Software Developer to join Marketing Automation
team in our office in St. Petersburg, Russia. At JetBrains, we have a
passion for making development teams more productive through smarter
software that leads to more efficient development processes, shorter release
cycles and more enjoyable coding - that's exactly why we've decided to
automate and optimize as many marketing processes as we can for JetBrains
itself, and we already have some tools and automations in place.

In this role you will be responsible for development, testing, deployment
and maintenance of marketing automations and workflows for Marketo, Zendesk
and other third-party and internal applications (including building new
standalone applications for various kinds of marketing automations). And we
will expect you to know the automations in place, know why they exist and
know how they can be made better.

As a Marketing Automations Developer you will work closely with product,
marketing, sales, support, internal development, IT and other teams.

DataGrip is a multi-engine database environment from JetBrains. It
supports all popular relational databases. Targeting the needs of
professional SQL developers, DataGrip makes working with databases an
enjoyable experience.

The product was released in December, 2016 and now it is actively
developed. 3 times a year we release a new major version of the product
that adds lots of new features and improvements. We are looking for an
experienced technical writer to join our team and help us develop
documentation for DataGrip.

Responsibilities:

Create clear and technically precise documentation for DataGrip;

Collect and analyse various scenarios of using the product or some
specific technology in it and create tutorials for them;

Work closely with the product development team to get a clear
understanding of how the product works and technical support and
marketing to understand user needs;

Analyse the needs of both new and experienced users and help them
learn the product efficiently.

Requirements:

3+ years of experience in technical writing;

Good command of English;

Ability to quickly learn about the product and new technologies;

Ability to prioritise tasks and manage time resources;

Experience in working with a large documentation base;

Experience with authoring tools, issue tracking and version control systems.

Additional requirements:

Empathy with users;

Good writing style and strong editing, formatting and communication skills;

Knowledge of databases and SQL is a plus.

At JetBrains Technical Writers are part of the product teams. Our
documentation process is very open: technical writers communicate
directly with the developers and QAs to get all the required technical
information. There are no intermediaries or long technical specifications
involved.

They also work closely together with the product marketing managers and
support engineers to analyse user feedback and define and prioritise the
tasks.

To author the documentation for IntelliJ IDEA we use IntelliJ IDEA itself.
So all technical writers have a hands-on experience with the product. We
have a plugin to IntelliJ IDEA developed internally to author
documentation. The documentation is written in XML using a schema adapted
to suite our needs. All source code is under Git version control.

We are looking for a person who is a developer and also enjoys writing
tutorials and samples to help us build the best possible tutorials,
documentations and guide for the IntelliJ platform. If you are an
experienced software engineering technical writer who loves writing texts
for developers and also likes to code, we might be looking for you!

The IntelliJ platform is an Open Source platform which is the basis for
all JetBrains IDEs as well as Android Studio. With over 2000 plugins and
a rich ecosystem, the IntelliJ platform is a building block for both
commercial, open source and private products.

Despite the impressive number of plugins, there is still so many
possibilities with the platform, and in order to improve the experience
for both new and existing developers that want to contribute to the
ecosystem.

What you will be doing:

Creating clear technical documentation for plugin developers

Writing samples, including material targeted at developers

Maintaining existing documentation and constantly improving it

Working closely with the development team to get a clear
understanding of how the platform works

Communicating with plugin developers to understand their needs

Analyzing the needs of both new and experienced users and helping
them learn the platform efficiently

Managing the production and publishing of documentation

Providing support to plugin developers

What we expect from you:

2+ years of experience in technical writing

Experience in software development, passion to write and read code

Good command of English

Good writing style and strong editing, formatting and communication skills

Ability to quickly understand and experiment with new technologies

Fluency with plaintext workflows including Markdown, Git, and build systems

Familiarity with issue tracking and version control systems

Familiarity with the JVM and Java/Kotlin programming languages

We’re looking for people that do not like to be micromanaged, have the
discipline to plan tasks and execute themselves and enjoy the freedom to
work.

We are looking for a person who is half-developer, half-technical writer
to help us build best possible documentation for Kotlin libraries. If you
are an experienced software engineering technical writer who loves
writing texts for developers and also likes to code, we might be looking
for you!

Kotlin is a modern programming language targeting the Java virtual
machine, Android platform, JavaScript, and native via LLVM. Its
multi-platform capabilities open a lot of opportunities for sharing code
and developing libraries and frameworks that can be used on multiple
platforms. The Kotlin language is designed to be pragmatic: best tooling
support, conciseness, safety, and interoperability with the target
platform. We pay special attention to making the language and libraries
user-friendly, easy-to-use, extensible and powerful.

Having just the language compiler is not enough to satisfy developers'
needs. A comprehensive set of libraries for multiple platforms is
required to get jobs done quickly. But in addition, we believe that
friendly documentation, guides, samples, and how-tos are as important as
good APIs and code quality.

What you will be doing:

Creating clear technical documentation for Kotlin libraries;

Writing samples, including material targeted at developers;

Collecting and analyzing various scenarios of using libraries and
frameworks and creating tutorials for them;

Maintaining the existing documentation and constantly improving it;

Working closely with the development team to get a clear
understanding of how the product works;

Communicating with developers using our products to understand their
needs;

Analyzing the needs of both new and experienced users and helping
them learn the product efficiently;

Managing the production and publishing of documentation.

What we expect from you:

3+ years of experience in technical writing;

Experience in software development, passion to write and read code;

Good command of English;

Good writing style and strong editing, formatting and communication
skills;

Ability to quickly understand and experiment with new technologies;

Fluency with plaintext workflows including Markdown, Git, and build
systems;

Familiarity with issue tracking and version control systems.

At JetBrains Technical Writers are part of the product teams. Our
documentation process is very open: technical writers communicate
directly with the developers and QAs to get all the required technical
information. There are no intermediaries or long technical specifications
involved. You will also work closely together with the product marketing
managers and support engineers to analyse user feedback and define and
prioritise the tasks.

If you believe you can make developers say “Wow! This documentation is
brilliant!”, contact us!

We are developing a tool for data science / machine learning specialists —
https://datalore.io/. Datalore is a collaborative computational workbook.
It understands data and computations and suggests possible statistical
analyses and visualizations.

We are looking for software developers to helps us build intentions, smart
components that can look at the (Python) code and data and can offer
further helpful actions. For example, the system can look at runtime data
and realize certain patterns (that there are missing values in the
dataframe or that we have a classification problem) and then offer a
suitable action (impute data or offer various classifiers). As a result,
these small tasks can be executed faster and the user doesn’t need to
remember the exact syntax or details.

The intentions subsystem has two components. One part resides at the
client side. It checks if the intentions are applicable, shows applicable
intentions, and then generates the code once an intention is invoked. The
other part lives at the server side. It analyzes the runtime data (are
there missing values? Is this column categorical?) and sends back the
relevant information (that later could be used to determine applicability
of the intentions and the generated code).

The intentions generate Python code. We also use numpy, pandas, sklearn,
ggplot (we have our own Python implementation), sympy (in the future this
list will grow). Our subsystem implementation mostly uses Java and Python
(we also have C++ in other subsystems in our project). For this position
we require basic knowledge of Java, Python, and data science/machine
learning.

Possible tasks:

Write various intentions. Requirements: Python, SciPy libraries
(numpy, pandas, sklearn), data science / machine learning. We
have some context (cursor position, cursor position in the Python
syntax tree) and we need to determine if this particular
intention is applicable, show a dialog (if there are parameters)
and then we generate code and insert it. Examples, do a train
test split, apply a linear regression, create a scatter plot.

Write the code for python services. We have access to python
runtime information. For example, we need to know which columns
of the dataframe are binary. Then we can send this information
over to the client side and use it for some intentions (for
example, for binary columns we can generate some specific code).

Other tasks: UI (various kinds of dialogs), the UI side of the
intentions (gwt), intentions infrastructure.

For over 16 years JetBrains has strived to make the strongest, most
effective developer tools on earth. Our leadership and exponential
growth combined with worldwide presence requires us to add a vibrant,
articulate, and detail-oriented AR Accountant to our growing team.
JetBrains Americas Inc is located in Foster City, CA.

What you will be doing:

Send AR Payment Status requests and contact customers as needed.

Work with other employees to determine how to resolve AR issues and maintain customer satisfaction.

Run reports in NetSuite (e.g. AR Aging, GL details).

Prepare AR reconciliation to AR Aging Report.

Prepare AR Journal entries and other entries in NetSuite.

Interact with back end development team to improve AR and collection process.

Prepare any AR related information requests during annual or other audits.

We are looking for persons who are interested in formal languages theory
and its application for static code analysis and graph database querying.

Our group is a part of
Programming
Languages and Tools Laboratory and we are working on different
aspects of languages processing such as algorithms for language
intersection which may be used in various areas
such as graph databases, static code analysis, compressed data
processing. There are many problems in these areas and attempts to find
solutions lead us to such fundamental problems in language theory as
emptiness of language, closedness of language classes under intersection,
etc. We propose the following areas of research:

Development of algorithms for languages intersection and deep
comparison of classical parsing techniques in the context of graph
querying.

Finding of new problems which may be formulated in terms of language
intersection and comparison of solutions, based on language
intersection, with other approaches.

Language classes and language specification formalisms comparison: a
balance between expressivity and decidability of fundamental
problems.

You can find examples of tasks on
GitHub and choose preferable area of work.
Feel free to request details in comments.

Requirements

Strong requirements are fundamentals of formal languages theory and good
math background (linear algebra, graph theory, logic). Would be
useful to have an experience in functional programming
(preferable F#, Scala) and in parallel and GPGPU programming.

The ultimate goal of the Laboratory is to realize the Human's
long-standing dream of having a fully autonomous mobile assistant who can
perform assignments and make decisions on his own to achieve the goal.

Currently we have open position for students in ROS SLAM Constructor
project.

Project goals are:

creation of a framework that acts as a constructor of SLAM algorithms
(a researcher is supposed to connect available components by himself
and add necessary modifications);

implementation of full set of basic components that can be assembled
into the most common (fundamental) SLAM algorithms;

creation of the infrastructure and tools for SLAM algorithms
debugging and analysis;

Would you like to get hands-on experience in the latest technologies and
gain insight in industry changing software development tools? Join our team
and become JetBrains Ambassador!

You may already be familiar with software development tools from JetBrains,
such as PyCharm (for Python developers), WebStorm (JavaScript) or IntelliJ
IDEA (Java). JetBrains provides its tools to students worldwide for
free.

Campus Ambassadors are community leaders opening up this opportunity to
their university peers. They share information about JetBrains tools and
demonstrate their benefits and advantages. Dozens of students at MFF already
use JetBrains tools, and others join every month.

Campus Ambassador:

Understands the scope, i.e. how many students at the university can
potentially be interested in JetBrains tools

Spreads the word about the availability of these free tools for
students

Sets up a user group or joins an existing user group

Organizes group meetings and workshops and makes presentations

Organizes campus visits for JetBrains speakers, if appropriate

Requirements

A background in software development

Currently pursuing MS/PhD in Computer Science or related field, or
working as a Teaching Assistant, Tutor or Research Assistant

Strong technical abilities

Excellent communication skills, good public speaking skills

This part-time position comes with a workload of about 5 hours per week.