It's even one of the investments with the highest return, in my opinion!
Some things that help to improve DX:
🧵👇
Ensure that all information necessary is present in a README.md within the project's repository.
It should be sufficient enough to state what the project does, what problems it tries to solve, etc.
Does the project require some setup to be able to run/test/develop locally? -> Write an interactive script which sets everything up, maybe creating a config file / .env with meaningful defaults or settings from script input.
Automate formatting by integrating a formatter and providing the necessary format config.
Time lost due to wrong formatting or having to do it manually is time lost unnecessarily.
Should run as a save action, or on each build / commit.
Make sure that tests run whenever necessary.
Having a dedicated "test"-command is good, running tests on commits is better, having a full CI pipeline automatically testing each commit and sending status mails is even better.
Whether you use GitHub issues, jira, or anything else.
If there are certain points, where status updates are required, try to automate it.
Feature gone into review? -> Use your tracker's API to update the status if necessary, e.g.
If there is anything left that requires knowledge which isn't obvious to anyone, automate it or at least write detailed documentation about it.
It costs time to remember the 10 steps necessary to release an artifact every time.
Don't let anyone alone with blank stacktraces. Your scripts should not only help with the happy case, but also when something goes wrong.
Treat them in the same way you treat the software you build, and really put time into getting them right