I want to apply for three internships at JetBrains:

Vim Regular Expressions Engine
Description
Vim is not your average text editor. With a history that spans more than 30 years, the editor’s impact on the industry is undeniable. Many editors and IDEs have gone as far as creating their own Vim plugins to support this mode of editing. With IntelliJ IDEA, we use the actively supported and developed plugin, IdeaVim. The plugin has about half a million active users per year.

For many search operations, Vim uses regular expressions. While the Vim syntax for regular expressions has a lot in common with PCRE (Perl Compatible Regular Expressions), it uses its own syntax, contains unique features, and integrates Vim-specific functionality.

For example, its syntax takes into account the position of the caret in the editor window, knows whether the text under the caret has been selected, and accounts for bookmarks in the text. This makes the regular expressions of Vim extremely powerful in the context of text editors and IDEs.

The goal of this project is to implement a regex engine in accordance with Vim’s specifications. Before writing the engine, you'll have to research RegExp implementations and choose suitable algorithms for RegExp parsing and matching.

This is an interesting and nontrivial task with a lot of room for various optimizations. It is possible to use this project as the basis for writing a strong thesis.

Requirements
Knowledge of Kotlin. If you’ve never used Kotlin before, you can use Java for the test task – but you will be required to learn and use it later.
Basic knowledge of Vim editing. The project is not about Vim itself, so advanced commands are not necessary.
Basic knowledge of RegExp syntax.
Dedication to Vim and test writing.
The following would be a plus:
Knowledge of JVM
Basic knowledge of how programming languages are parsed and compiled.

Extending Fleet With New Language Integrations
Description
Fleet is our next-generation IDE that's built to be fast and lightweight.

Help us bring further language integrations from the powerful IntelliJ platform to Fleet. You will work on the IntelliJ code engine as well as Fleet itself to make it more polyglot than ever.

We will work with you to find the right areas for you to contribute according to your interests and abilities, such as:

Adapting refactoring and code analysis functionality for Fleet
Building UI using our cutting-edge reactive UI framework Noria
Integrating Fleet with external tools
Extending core Fleet paradigms
If you have any questions, feel free to contact nikolaj.schumacher@jetbrains.com

Requirements
Experience in Kotlin (or a similar modern high-level language)
Interest in IDEs and software development ecosystems
Experience with IntelliJ, Fleet, or other JetBrains IDEs is beneficial

Integration of ReSharper and Roslyn Quick Actions
Description
ReSharper is a plugin to improve the productivity of .NET development in Microsoft Visual Studio that includes analysis tools to find bugs and problems in the source code, as well as an extensive set of quick actions to fix these problems.

.NET Compiler Platform (Roslyn) Analyzers also inspect the source code code for quality, maintainability, design, and other issues. Roslyn Quick Actions allow applying fixes for code analyzer rule violations.

The set of ReSharper and Roslyn analyses and quick actions partly overlap and partly complement each other. The goal of the project is that ReSharper’s users can use the full power of both systems and easily invoke any of the available quick actions from one place.

In this project we will help you to accomplish the following tasks:

Research Roslyn API to obtain quick actions;
Implement import of Roslyn quick actions;
Find a way to embed Roslyn quick actions into the ReSharper Alt+Enter menu.
While working on this project you will join the ReSharper team. You will be able to learn how we build and maintain ReSharper, as well as what’s under ReSharper and Visual Studio hoods.

Requirements
Development experience in C#
Ability and desire to do research tasks and understand other people's code
Don't be afraid to make mistakes, and start over
Nice to have:

Experience in asynchronous programming

I want to apply for all these three software engineering internships at JetBrains.
For the application, next to a link to my portfolio, I need to fill a free text field in the application form that says "Tell us about your skills and motivation (you can use Markdown here: \*\*Strong\*\* # Title \*Italic\* \* List item `code` [Link text](url))".

I'm really unsure about the right format for that field. I don't think I should replicate my portfolio there because I can already provide a link to my portfolio. Should I use this field for a cover letter (with all the formal details such as "Dear ...", "I would be honored ...", "Best regards") or should I shortly summarize my portfolio/my CV in this field?
JetBrains의 세 가지 인턴십에 지원하고 싶습니다:Vim 정규식 엔진설명Vim은 평범한 텍스트 편집기가 아닙니다. 30년이 넘는 역사를 자랑하는 이 에디터가 업계에 미친 영향은 부인할 수 없습니다. 많은 편집자와 IDE가 이 편집 모드를 지원하기 위해 자체 Vim 플러그인을 만들었습니다. IntelliJ IDEA에서는 적극적으로 지원 및 개발된 플러그인인 IdeaVim을 사용합니다. 이 플러그인은 연간 약 50만 명의 활성 사용자를 보유하고 있습니다.많은 검색 작업에서 Vim은 정규 표현식을 사용합니다. 정규 표현식에 대한 Vim 구문은 PCRE(Perl 호환 정규 표현식)와 공통점이 많지만, 자체 구문을 사용하고 고유한 기능을 포함하며 Vim 전용 기능을 통합합니다.예를 들어, 이 구문은 편집기 창에서 캐럿의 위치를 고려하고, 캐럿 아래의 텍스트가 선택되었는지 여부를 파악하며, 텍스트의 북마크를 고려합니다. 따라서 Vim의 정규 표현식은 텍스트 편집기 및 IDE의 맥락에서 매우 강력합니다.이 프로젝트의 목표는 Vim의 사양에 따라 정규식 엔진을 구현하는 것입니다. 엔진을 작성하기 전에 정규식 구현을 조사하고 정규식 구문 분석 및 매칭에 적합한 알고리즘을 선택해야 합니다.이것은 다양한 최적화를 위한 많은 여지가 있는 흥미롭고 사소하지 않은 작업입니다. 이 프로젝트를 강력한 논문 작성의 기초로 사용할 수 있습니다.요구 사항Kotlin에 대한 지식. 이전에 Kotlin을 사용해 본 적이 없는 경우 테스트 작업에 Java를 사용할 수 있지만 나중에 배우고 사용해야 합니다.Vim 편집에 대한 기본 지식. 이 프로젝트는 Vim 자체에 대한 것이 아니므로 고급 명령은 필요하지 않습니다.RegExp 구문에 대한 기본 지식.Vim 및 테스트 작성에 대한 헌신.다음 사항이 있으면 플러스입니다:JVM에 대한 지식프로그래밍 언어가 어떻게 구문 분석되고 컴파일되는지에 대한 기본 지식.새로운 언어 통합으로 Fleet 확장설명Fleet은 빠르고 가볍게 설계된 차세대 IDE입니다.강력한 IntelliJ 플랫폼에서 Fleet으로 더 많은 언어 통합을 제공할 수 있도록 도와주세요. IntelliJ 코드 엔진은 물론 Fleet 자체에 대한 작업을 통해 그 어느 때보다 다국어 지원을 강화할 수 있습니다.다음과 같이 여러분의 관심사와 능력에 따라 기여할 수 있는 적합한 분야를 찾기 위해 여러분과 함께 노력할 것입니다:Fleet을 위한 리팩토링 및 코드 분석 기능 적용최첨단 반응형 UI 프레임워크인 Noria를 사용한 UI 구축Fleet과 외부 도구 통합핵심 Fleet 패러다임 확장질문이 있으시면 언제든지 nikolaj.schumacher@jetbrains.com 으로 문의해 주세요.요구 사항Kotlin(또는 이와 유사한 최신 고급 언어) 사용 경험IDE 및 소프트웨어 개발 에코시스템에 대한 관심IntelliJ, Fleet 또는 기타 JetBrains IDE를 사용한 경험이 있으면 유용합니다.ReSharper 및 Roslyn 빠른 작업의 통합설명ReSharper는 소스 코드에서 버그와 문제를 찾을 수 있는 분석 도구와 이러한 문제를 해결하기 위한 광범위한 빠른 작업 세트를 포함하는 Microsoft Visual Studio에서 .NET 개발의 생산성을 향상시키는 플러그인입니다..NET 컴파일러 플랫폼(Roslyn) 분석기는 또한 소스 코드의 품질, 유지 관리 가능성, 디자인 및 기타 문제를 검사합니다. Roslyn 빠른 작업을 사용하면 코드 분석기 규칙 위반에 대한 수정을 적용할 수 있습니다.ReSharper와 Roslyn 분석 및 빠른 작업 세트는 부분적으로 겹치기도 하고 부분적으로 서로를 보완하기도 합니다. 이 프로젝트의 목표는 ReSharper 사용자가 두 시스템의 모든 기능을 사용하고 한 곳에서 사용 가능한 모든 빠른 작업을 쉽게 호출할 수 있도록 하는 것입니다.이 프로젝트에서는 다음 작업을 수행할 수 있도록 지원합니다:빠른 작업을 얻기 위해 Roslyn API 조사하기;Roslyn 퀵 액션 가져오기 구현하기;Roslyn 빠른 작업을 ReSharper Alt+Enter 메뉴에 삽입하는 방법 찾기.이 프로젝트를 진행하는 동안 ReSharper 팀에 합류하게 됩니다. ReSharper를 빌드하고 유지 관리하는 방법과 ReSharper 및 Visual Studio 내부에 무엇이 있는지 배울 수 있습니다.요구 사항C# 개발 경험연구 작업을 수행하고 다른 사람의 코드를 이해하려는 능력과 열망실수하는 것을 두려워하지 않고 다시 시작하는 자세있으면 좋습니다:비동기 프로그래밍 경험JetBrains의 이 세 가지 소프트웨어 엔지니어링 인턴십에 모두 지원하고 싶습니다.지원서에는 포트폴리오 링크 옆에 "귀하의 기술과 동기에 대해 알려주세요(여기서는 마크다운을 사용할 수 있습니다: \*\*강함\*\* # 제목 \*이탤릭체\* \* 목록 항목 `코드` [링크 텍스트](url))"라고 입력해야 합니다.해당 필드에 적합한 형식이 무엇인지 잘 모르겠습니다. 이미 포트폴리오에 대한 링크를 제공할 수 있으므로 여기에 포트폴리오를 복제해서는 안 될 것 같습니다. 이 필드를 커버 레터에 사용해야 하나요("친애하는 ...", "영광입니다 ...", "안부 인사" 등 모든 공식적인 세부 정보가 포함된) 아니면 이 필드에 포트폴리오/이력서를 간략히 요약해야 하나요?