Mateusz Dymiński


Software engineer with a strong technical background in software development, sometimes DevOps. Loves backend, tolerates frontend, 7+ years of experience in Java, but since the beginning of 2014 fascinated by the Golang. One of the GoWroc (Golang User Group Wrocław) leaders. During the daily duties, he's building reliable and scalable distributed systems in a cloud environment at Nokia.



Diagnose your Golang App anytime anywhere! (2019)

The Go ecosystem provides a large suite of APIs and tools to diagnose logic and performance problems in Go programs. This presentation summarises the available tools and shows how to pick the right one for a specific problem.

Following aspects will be covered during the presentation:

  • Profiling – how to profile Go application, what kind of profiles are available in Go tool pprof, examples how to find problems with CPU and Memory
  • Tracing – how to trace Go, application, examples with analyzing application latency in a Go process
  • Debugging – how to debug Go application, what need's to enabled to debug app and how to debug app remotely
  • External instrumenting – how to instrument and trace application with external tools like Prometheus

Hopefully, leaving the room everyone will know how to diagnose their Golang application!

Code and presentation are available on GitHub.


Clean code in Go (2018)

There is plenty of definitions of "clean code”, every programmer has its own, every language has its own, and of course, everyone when he thinks about the clean code - has the book written by Uncle Bob (Robert C. Martin) in front of his eyes. But what happened when we confront the definitions created by some IT gurus with Go language specification and decisions which were made during inventing Go? Is writing if err != nil hundreds of times clean? 

In my presentation I’ll try to answer this and many more questions which you could have in your mind when starting your journey with Go. The general idea behind my talk is to prove that:
  1. Writing clean code in Go is really easy
  2. Go is cleanest programming language
  3. Every programmer should give a chance to Go
Probably you ask yourself a question: “Is this presentation worth to see?”:

Do you have some experience with Go, but you are still complaining on syntax and error checking? Great! I'll try to explain why creators of Go made particular decisions to make the code written in Go clean.

No experience at all? - even better! You will understand why Go seems to be ugly and primitive but it does great job when it comes to cleanliness.

Go expert? - Ok - you could find something better than my talk in the agenda : )


Take your microservices to the next level with gRPC (2017)

gRPC is a RPC framework focused on performance and accessibility across a wide range of programming languages. gRPC was initially developed at Google as a next generation of Stubby — a general application platform at the heart of many Google products and services. gRPC is not only successor of Stubby, but improve upon it, in the open, around modern standards such as HTTP/2 and Protocol Buffers. If you ever wondering how Google is creating the microservices this talk is definitely for you.

In this session I will demonstrate, through a series of live demos and code walkthroughs, how to design and build a collection of microservices using gRPC from the ground up. Examples are written in Java and Go. At the end I will show how we can use gRPC in backend-device {Android, iOS} communication with simple demo app.