The same engine that VSCode uses is open source [1]. With lsp-mode [2] or eglot [3], you can have the same stuff working inside emacs. I've actually been writing Java inside emacs lately --- yes, java, and I have had very few issues.
One caveat, development on the emacs LSP stuff is moving very quickly, so I don't recommend using ELPA/MELPA/etc. to install the plugins. I use straight.el [4] to manage my plugins, they're checked out from the upstream source and can be updated at-will. You'll also need an up to date version of emacs, ie: 26+. (That's the current release, but it's not available in some distributions ie: debian/ubuntu yet.)
One caveat, development on the emacs LSP stuff is moving very quickly, so I don't recommend using ELPA/MELPA/etc. to install the plugins. I use straight.el [4] to manage my plugins, they're checked out from the upstream source and can be updated at-will. You'll also need an up to date version of emacs, ie: 26+. (That's the current release, but it's not available in some distributions ie: debian/ubuntu yet.)
---
[1]: https://github.com/Microsoft/python-language-server
[2]: https://github.com/emacs-lsp/lsp-mode
[3]: https://github.com/joaotavora/eglot
[4]: https://github.com/raxod502/straight.el