I used to be a Java developer and now I am a Golang dev. I moved from a very large company (1000's of devs) to a medium size one (about 100 devs) and would say there are interesting difference in the culture of developers around languages. My experience is that Java shops have a way of doing things based on years of debate. However, I also noticed that there where a lot of devs who just took the "best practices" at face value without much thought so there was a huge amount of friction when you wanted to do something different. Largely centered around who didn't really know why they did stuff a specific way. When I switched to a Golang shop it was much different, a lot more freedom around what to do as there was just not enough time for all those "industry standard" ways of programming to take root. I like this freedom, and the learning that goes with it, a lot more though it dose come at a cost. I have seen several coding practices I feel will cause issues, use of global variables to do testing for mocks, singletons, things like that. Basically, what I am saying is you might want to try a job that operates in a newer language if wanting to try new things is what you are looking for. If the company is open to a newer language the are probably open to new ideas as well. That has been my experience at least.
Depends on your skill level, the trick to a good practice project is that is big enough that you are learning the concepts about the language that will push your abilities forward. However, it also should be small enough that you don’t waste your time solving problems you don’t really care about and that are not increasing your skills. For me I am usually learning a language to take advantage of some feature that language has. I know Go makes it really easy to create and test web servers so if that is why you picked it up trying making and testing a simple API. Maybe one that just queries two other existing APIs on the internet and aggregates the results. Making an API in Go would be good because you will need to unmarshal the json from the other two public APIs and combine the object then marshal the object to json and return it to the user. Be sure to write unit tests.