One major investment that will bring the most value, in the long run, is building systems rather than trading time for your outcome. Before I dive into this, let me preface it with how I define systems and time. A system is something that is pre-built or a series of steps to take in a given order. For example, a system of getting a machine warmed up would be a checklist to follow, a few tasks outlined in a specific order. It's not necessarily the work itself, but what comes before the work.
The major benefit of setting a system in place is that it removes the number of mistakes made. If something is proven, and you follow the same steps, you should get the same outcome. It reduces the amount of human input, which is where the root of all problems comes from, thus lowering your overall workload. The goal is to spend as little effort on the tasks that don't move the needle.
The downside to having a system is the time and effort it takes to build and even follow. It's not a simple transfer of work where you can move your time spent setting up the machine over to a checklist, but rather a thought-out process while you're going through it doing your best to optimize and remove the possibility of errors.
Building a system gives you the time and freedom to work on other projects while your system works for you. It may not be the fastest way to do something, but it's proven, and you don't have to spend time trying to start it from scratch.
In the case of my boss, who's been in the industry for 40+ years, he already has the knowledge and system built-in, so he doesn't spend very much time trying to figure out how to go about programming a specific part. In situations like this having a system isn't as critical but definitely still beneficial. He's built up an amazing speed for his work over time through repetition of working on so many different prototypes. There still is a certain amount that is just grunt work that doesn't require a lot of mental focus to get done, so having a system, or in this case, pre-set toolpaths already programmed greatly reduces the amount of time spent on the overall program.
I drew a quick line graph showing the relationship between time spent in effort with systems versus scratch each time. The blue line represents starting from scratch with each project method, which has a moderate amount of effort and steadily gets lower. Whereas the orange line denoting the systems-based method shows a large upfront amount of effort required to put it in place, then drops below the blue line and steadily gets lower from there. You can see that the short term, starting from scratch with each progress brings you the most value for time spent, and you steadily get better, but the systems-based method has you pull a lot of effort to build it, but when it's set in place, it requires little effort to do the same amount of work.
I'm primarily referring to manual, mindless work that doesn't require much thought to do. With the more complicated work, you want to have that direct mental input to do things manually.