mastering dependency injection in golang: a practical guide for engineers | pilput