diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
index 22b0f46db965af4e9063e530735b34e605d1a461..3b1a2db9caec4598b93993c7816c6ac5c0344b6b 100644
--- a/.devcontainer/Dockerfile
+++ b/.devcontainer/Dockerfile
@@ -9,3 +9,5 @@ RUN install-tool python 3.11.4
 
 # renovate: datasource=npm
 RUN install-tool yarn 1.22.19
+
+USER ubuntu
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 6daf80c6940f4a297c316fa78186ad83e1e9f56d..18e2fb4bf12300560361792a25afa69f38a6cbba 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -7,14 +7,11 @@
   },
   "name": "Renovate",
   "dockerFile": "Dockerfile",
+  "features": {
+    "ghcr.io/devcontainers/features/common-utils:2": {}
+  },
   "customizations": {
     "vscode": {
-      "settings": {
-        "terminal.integrated.profiles.linux": {
-          "bash": { "path": "/bin/bash" }
-        },
-        "terminal.integrated.defaultProfile.linux": "bash"
-      },
       "extensions": [
         "dbaeumer.vscode-eslint",
         "esbenp.prettier-vscode",
@@ -30,5 +27,7 @@
     "seccomp=unconfined",
     "--privileged"
   ],
-  "postCreateCommand": "yarn install"
+  "postCreateCommand": "yarn install",
+  // Otherwise jest watcher fails because deps were not installed yet
+  "waitFor": "postCreateCommand"
 }