

Beschreibung
Learn how to design, build, and deliver robust, scalable enterprise systems with Go. While many resources stop at syntax and beginner examples, this book is written for professional developers who need to create production-grade services. The mission of the b...
Learn how to design, build, and deliver robust, scalable enterprise systems with Go. While many resources stop at syntax and beginner examples, this book is written for professional developers who need to create production-grade services.
The mission of the book is clarity at scale: how to keep systems understandable, maintainable, and efficient as they grow. You will see why Go's simplicity is not a limitation but a strengthand how it enables teams to build reliable software without unnecessary complexity. Through a layered learning approach, you'll begin with the rationale behind choosing Go and the language fundamentals, then move into core topics such as testing, memory, and concurrency.
From there, you'll learn how to structure enterprise projects, manage configuration, and build connected services using HTTP, REST, gRPC, and event-driven patterns. The book concludes with practical Go design patterns. Each chapter offers clear goals, hands-on exercises, and portable code examples using the standard library wherever possible.
Go beyond basic tutorials and gain real-world production insights, helping you avoid common pitfalls and design systems that run smoothly in demanding environments. Along the way, you'll also find lessons learned from real engineering teams on collaboration, architectural thinking, and the architecture behind the architecture.
What You Will Learn:
Intermediate professional developers who want to design, build, and maintain robust enterprise systems.
Teaches how to design and operate full enterprise projects with Go beyond basic syntax Combines technical depth, collaborative practices, and real-world insights Delivers practical, reusable examples that readers can immediately adapt to their own projects
Autorentext
Saeed Shahsavan is a senior software engineer and software architect with more than 18 years of experience designing and implementing enterprise-scale distributed systems. Over the course of his career, he has worked in ERP, telecommunications, government-to-citizen platforms, and banking, most recently at Raiffeisen Bank International in Austria.
His expertise includes Go, Java, and React, with a deep focus on search engines, event-driven architectures, and high-performance microservices. He has also served as a project manager, technical lead, and instructor, mentoring teams on writing idiomatic, testable Go code and managing complex enterprise projects.
He enjoys combining hands-on engineering with architectural vision, and is passionate about clarity, scalability, and performance. Through his writing, he aims to help professional developers build maintainable systems while sharing practical lessons he has learned in real enterprise projects.
Inhalt
Part 1. Foundations of Modern Software: Thinking, Design, and Go.- 1. Teamwork: The Architecture Behind the Architecture.- 2. Choosing a Programming Language: A Decisive Choice.- 3. Introducing Go: The Architecture of Simplicity.- 4. Structuring Go Projects: Modules, Packages, and Boundaries.- 5. Core Language Elements: Types, Variables, and Operators.- 6. Modeling Behavior: Functions, Methods, and Interfaces.- 7. Testing in Go: Building Confidence Through Code.- 8. The Architecture of Memory: Foundations of Speed and Scale.- 9. Concurrency by Design: Goroutines and Channels in Go.- Part 2. Building the Enterprise: From Blueprint to Mastery.- 10. The Blueprint of Vision: Defining the Project Roadmap.- 11. Building a Multi-Module Project: Foundations of Maintainability.- 12. Loading Configuration: Building Environment-Aware Go Systems.- 13. Serving the Web: Running HTTP Servers the Right Way.- 14. Hexagonal Architecture in Go: Keeping Business Clean.- 15. API First: Building Robust REST APIs.- 16. Building Persistence: Databases as Servants, Not Architects.- 17. Testing the Real World: Integration Tests with Testcontainers in Go.- 18. Events as the Nervous System: Building Stream-Driven Systems in Go.- 19. gRPC on the Fast Lane: High-Performance Go Services.- 20. Design Patterns in Go: Building Maintainable Enterprise Systems.