Хм. Я могу показаться странным, но я ни одного курса не проходил, ни одной книги по Go не читал. За свою практику внес много кода и оптимизаций в opensource проекты. В то же время я себя не называю программистом.
Ни сколько не преуменьшая ваш опыт, могу сказать лишь одно. Большинство программистов начинают именно с этого, с написания работающего кода. Я сам первые N лет исключительно писал код, сутками, и не нужны были мне не книжки, ни курсы, ни образование, вообще ничего. Есть только одна проблема, потом этот код кто-то будет поддерживать и развивать, возможно другие люди. Так же потом этот работающий код может разростись очень сильно в размерах. Короче по моему опыту, написать работающий код и законтрибьютить в OpenSource не сложно и проблемой не является. Проблемы начинаются когда продукт выстрелил, вырос и требует поддержки и развития. Вот тогда надо действительно думать, а стоит ли писать вообще какой-то код, или его написание будет пустой тратой денег, ну и так далее. И вот тут уже начинаются танцы с теорией, книжками, образованием и т.п.