We've just cancelled the price increase! Last Minute tickets are just  218  170 BYN (◕‿◕)
Close
 

The 4th community driven international conference fully dedicated to Go

Organized by

Meet attendees from

Australia
Austria
Belarus
Belgium
Brazil
Colombia
Costa Rica
Croatia
Czech Republic
Finland
France
Germany
Greece
India
Ireland
Italy
Japan
Netherlands
Nigeria
Portugal
Romania
Russia
Spain
Switzerland
Italy
United Kingdom
USA
UTC/GMT
California/PDT
London UTC+1
New York/EDT UTC-4
12:00pm–4:00pm
5:00am–9:00am
8:00am–12:00pm
1:00pm–5:00pm
Berlin UTC+2
Delhi UTC+5:30
2:00pm–6:00pm
5:30pm–10:30pm

GoWayFest local timing
on July 11 and July 12

Sydney UTC+10
10:00pm–2:00am
Minsk UTC+3
3:00pm–7:00pm
UTC-7
Mat has been coding Go since before v1 and is a regular host on the Go Time podcast.

Author of Go Programming Blueprints: Second Edition.

He writes blogs.
In the past he worked on a Go-compiler and third-party tooling for it like static analyzers and utilities for refactoring.

Now he plans to port many tools created for Go to the PHP ecosystem.

Most of his interests are related to devtools and programming languages.

He's working on the "go-jdk" project that implements JDK in Go that runs quite fast and has nice Go<->Java interop.
I'll reveal a few secrets on how to build an efficient JIT-capable VM in Go as well as how to make it compatible with Go runtime that doesn't like dynamically generated code (especially in the recent releases).

This talk will cover several topics that are important for anyone who wants to implement an efficient VM in Go:
• Instruction dispatch techniques
• Register-based vs stack-based virtual machines
• Generation and execution of the machine code during the run time (JIT)
• Calling Go functions from the JIT'ed code
• How to use Go GC in your VM properly
• Object allocation tricks in Go.
Philosopher ego-less coder and community enthusiast. I develop applications in Golang and PHP using domain driven design (DDD) methodology supported with modern tools and practices.

At the moment I am specialized in coding complex domain logic writing simple, clean and testable code.
I'm a supporter of a proper Git workflow applying a strict commit convention for a good and readable history of the code.

I am always looking to discover new development methods and technologies, I have good networking of developers, with whom I relate and compare on a daily basis.

Currently, I'm the maintainer of the Laravel-Italia community and Conventional Commits.
There are plenty of articles explaining how to apply DDD in Go, but none of them uses the language idiomatically.
What if I tell you that it is possible to achieve it without ending up with an OOP application?

Let's create a Go app modeling a domain from the strategic as well as the tactical side.
How many times have you read an article about DDD and Go ending up using DTOs and DAOs or packages named infrastructure, application, and domain?

This talk is not going to be about reuse the concepts from the DDD literature applied in other idioms, ending up with an object-oriented application written in Go.
Instead, I'll show how to apply the most popular tactical patterns to shape as idiomatic Go code the domain invariants, and how to use strategic patterns to let a domain analysis structure an application.
Dylan is a Go software engineer developing a “MLOps as a Service" product, it's like DevOps but for Machine Learning.

In addition to this, he worked in a university-hospital processing great amounts of medical data, doing millions of daily transactions and filtering through TBs of data.
The challenges when dealing with such data sets led him to explore these probabilistic data structures.

He enjoy spending time with functional languages such as Haskell and LISP-family languages.
What do you do when you need to solve a problem, but the data does not fit in memory? Or perhaps it fits, but takes hours to run?

One option is giving up, and the other is looking at probabilistic structures. Because a talk on the former would be boring, this talk will focus on the structures.
Italo is a Brazilian living in Berlin, Germany.

Previously, he worked @N26 and @HelloFresh mostly doing things in Go.

He enjoys working with distributed systems and solving complex problems.

Go has been his language of choice since 2015 to help him achieve these things while having a great deal of fun.

Today, he spends most of his free time contributing to Open Source projects, making lots of coffee and enjoying life at its best.
We have neglected failure for quite some time in our industry, but how can we design for failure? And especially, how Go can help us to be prepared for the unexpected?

In this talk, I would like to present a few of the resilient patterns that we can apply in distributed systems.

Here I would like to talk about:
• How to design a system for failure?
• What are the pitfalls and gotchas that we have to be prepared in a microservice environment?
• How can SRE principles help us get there?
• And most importantly, how do we put this into practice?
Endre is a software developer and open source enthusiast tackling mostly with image processing, computer vision and concurrency related problems.

More information about his interest and work can be found on his personal website and www.esimov.com.
In this talk I will discuss about Pigo, the only “pure" Go face detection library existing in the Go ecosystem which does not require any third party library and is platform agnostic.

I will discuss about it's integration into other programming languages and porting it to Webassambly.
Previously Daniel was the Lead Software Engineer at the Sauce Labs' Real Device Cloud Core Team in Berlin where he was responsible for low level USB programming and reverse engineering iOS and Android internal APIs to build stable new features on inherently unstable consumer devices.

Before that he held roles as developer, team leader, IT manager and project manager during his 13 year career as an officer in the German Military.
Have you ever wondered how closed source features are reverse engineered?

I find few things as challenging and fun as creating meaning from a bunch of hex dumps only by using analytical and engineering skills, to open up a proprietary protocol and build working software on top of it.

In my talk I will show you:
• how to debug and analyze USB traffic on a Mac with Wireshark
• easy ways of how to make sense of network/usb protocols just by looking at hex dump representations
• how to implement a USB device codec with golang and libusb
• and how to stream h264 video data over the network or save it to a file

The whole project is MIT licensed and well documented, so that anyone can go ahead and implement it in their favorite language.
Andrii likes testing and programming. Also he's working as Senior Python Backend Developer via toptal under social network.

He boasts expertise as a Python and Golang developer with strong hard and soft skills. He has deep knowledge of automated-testing and really understands how to assess and improve project quality.

Andrii likes to solve difficult tasks, algorithms and takes part in sport programming contests. He's also interested in databases and unix based operating systems and has fallen in love with natural language processing and text mining.
Recently the interest in concurrent programming has grown dramatically. Unfortunately, parallel programs do not always have reproducible behavior. Even when they are run with the same inputs, their results can be radically different.

In this talk I'll show how to debug concurrency programs in Go.
Federico works remotely for Red Hat, where he contributes to the networking features of OpenShift.

Before that, he has been building complex distributed systems for finance using C language, and then in Go.

His current interests are related to Go and modern microservices architectures.

He is also a maintainer of Athens, the dependencies proxy for Go.
Developing a native kubernetes app goes around two simple concepts: defining new data structures (custom resources) and delivering a kubernetes component that handles those structures.

Despite that, doing the first steps can be intimidating:
• How do we define (and consume) new resources?
• How about interacting with existing resources defined by somebody else?
• How do I even find their Go definition?

In this talk, I'll introduce:
• How to interact with kubernetes custom resource using non type safe clients
• How to leverage the code generation to avoid casting errors and reduce the proliferation of boilerplate code
• How informers, workqueues and other powerful tools make it possible to implement a bullet proof event loop
• Finally, I'll describe the operator-sdk, a framework that makes the implementation of a controller even simpler and more automated
Ellen is a Google Developer Expert for Go and a CNCF ambassadoran.

She ran DevRel at both Tilt and Garden - two of the very few companies 100% focused on the development experience side of Kubernetes. They got their start building Kubernetes CLI tooling under SIG-CLI.

She's since spoken about Go and Kubernetes at many world-famous events.
When a developer changes a line of code, how long does it take for that code to run in their development cluster? I have seen the answers to that question vary between 1 second and… infinity. So how do you get your team's code to stay on the 1 second side?

In this talk, I will explore every avenue to make our "from code change to process running" benchmark faster for Go applications, and show you whether to:
• …cache your deps with Docker layers or go mod
• remove debugging data to make Go binaries smaller
• pre-populate your container with the compiler cache
• keep a container running, sync code diffs to it, and recompile in place
• re-compile in place when you have a lot of memory and CPU
• re-compile when a lack of memory and CPU make the Go compiler sad
• use trickery to make binaries even smaller
• and one last trick!

You'll also see how each item differs when using a local cluster versus a remote one. Expect an in-depth exploration with strategies and techniques you can put in practice to speed up your workflow for good!
David is a well-respected voice within the tech community, speaking on a variety of topics such as software design, performance, and the Go programming language.

David's passion for Go since 2009 has taken him around the world writing, teaching, and speaking about Go.

David is currently a member of the technical staff at VMware. Prior to their acquisition he served as a Staff Engineer at Heptio, a Seattle based company, focused on building tools to help developers become more productive with Kubernetes.
The art of writing software is the act of communication.

You might feel that this is a private conversation about your code with a persnickety compiler, but the audience for software is much larger. It's the people who use your libraries and your APIs, the folks who work with you maintaining the codebase, and it's you, in the future, searching for clues about why you wrote what you wrote the way you wrote it.

This talk is all about naming. It's about the names we give to things in our programs and how those decisions can affect the maintainability of the software we write.
Geek out with Mat Ryer on Go's best feature: defer.

Mat tells you everything you always wanted to know about defer.
From what it is, how it's useful, common gotchas, down to how it really works under the hood.
Mark Bates is an engineer and architect who has built high quality, scalable applications for companies such as Apple, USA Today, Klarna, and Palm.

He has written three books on prog, "Distributed Programming with Ruby", "Programming in CoffeeScript", and "Conquering the Command Line".

Mark has spoken at conferences around the world and helps to organize or Emcee conferences such as GopherCon, GopherCon UK, and GothamGo.

Mark is also the lead architect of the Go web framework Buffalo.
In 2013 I started writing Go.

In 2019 I threw out everything I knew about it and started from scratch.

Join me on a developer's journey to rediscover, reconnect with, and become a better a Go developer.
Natalie is a learner, a Google Developer Expert for Go, a public speaker and a sailor.

When she's not working on robust systems with Aerospike, she is organizing the GopherCon Europe and Cloud Nein conferences, and the Berlin chapters of the Go and Women Techmakers user groups.

Prior to that, she was an Engineering Manager, Software and Hardware Engineer, and a Co-Founder of a mobile start-up.

In her free time, she is wondering if there is life on Mars.
TensorFlow 2.0 is the new version of the end-to-end open source platform for Machine Learning, where researchers can push the state-of-the-art in ML and developers can build and deploy ML and AI powered intermediate applications.
But the ML code, that is at the heart of an ML system in production, usually accounts for a few percents of the entire codebase.

In this talk, Natalie will share from her experience the infrastructure side of things, and will discuss considerations in preparing the infrastructure for an ML training, real time and offline, and present a walkthrough using a production example.
A passionate Gopher, Ankur is a co-organizer of Golang-Bangalore and the Go Study Group meetup.

In his spare time, he is a hobbyist photographer.
Concurrency in Go is technical wizardry hidden beneath abstractions & seems like magic.

In this talk, I will dive inside those abstraction layers through visual diagrams to help the audience, understand how Go concurrency magic is implemented, which helps to interpret the scheduler trace information.
Paschalis is a physicist turned software engineer.

He has held roles in teams of various sizes and industries, from two-people research projects, to retail optimization in a startup and aiding a large corporation's digital transformation.

In his free time, he tries to give back to Open-Source projects, likes taking long walks and plays videogames on the hardest difficulty.

He currently works for Beat as a Backend Engineer, building growth tools for the ride-hailing industry.
In the era of function-sized microservices, this talk explores the performance limits of a single-instance Go application.

It hopes to answer questions such as:
"What's the maximum number of goroutines and defers you can reasonably have?"
"How is resource usage growing with concurrent connections to a net/http server?"
"At which point the GC slows down to a halt?"

In this past decade, the industry has been trying to modularize deployments in smaller and smaller units. Today, horizontal scaling is almost the default; however Go is decent at scaling vertically as well.
Exploring the most recent performance improvements in Go and how far you can get on a single-instance Go application will provide a technical measuring point on 'when and how to scale'.
Originally from Wellington, New Zealand and moved to Amsterdam in 2018 to experience the European lifestyle!

Prior to being a Go developer, Jen worked a lot with Graduates and Interns in the tech-sphere, and was a .NET developer for 5 years until she was introduced to Go last year and have never looked back since.
Why my team chose to move away from microservices, and instead opted to create a new monolith application written in Go when we were given a new greenfields project.

I want to discuss some of the reasons behind the decision, and what helped us to get a fully fledged Messaging application into production in 5 weeks.
Before Athens, Aaron was a core maintainer and chair of the Kubernetes SIG-Service-Catalog and a contributor to various other projects in the Kubernetes community.

He has 15 years of software engineering experience ranging from frontend design to distributed data systems.

He discovered Go around 2013 and hasn't looked back. He lives in beautiful Portland, OR.
Go 1.11 introduced modules as the new dependency management technology for Go, and since then, we've been hit with a lot of new technologies in this space. With version 1.13, we're now using a Google-hosted module proxy and a checksum DB, all by default.

In order to safely and efficiently build our programs, we need to not only understand these technologies, but to understand how they affect our workflow and the safety of our app.

In this session, I'll briefly introduce the new features that Go 1.13 turns on by default, the pros and cons of these features, why you might want to opt out of them, and how to do so. Much of this talk will be live demos illustrating why to use the default features and why/how to turn them off. We'll use Athens for the demos of turning the defaults off.

You'll walk away from this talk with a good understand of what your builds are doing under the hood, under what circumstances you should use them or turn them off, and how to do just that.
Matteo Grella's expertise has the distinction of combining vision, leadership and technical background.

He has been engaged in Artificial Intelligence projects by private companies, academic institutes and government organizations, among them the University of Turin, the `Accademia Della Crusca` and the Italian Ministry of Defense.

With a particular focus on Natural Language Processing and related Machine Learning models, Matteo is active on the open-source and authoring research papers.
As Head of Artificial Intelligence, Matteo is responsible for the application of these technologies within the EXOP Group.
Are you loving Go? But you're having an affair with NLP?
From today, Gophers can exploit the potential of state-of-the-art NLP technologies without moving to other languages (and without the burden of DL frameworks).

In this talk, I will introduce spaGO, a work-in-progress yet ready-to-use library for ML/NLP, written entirely in Go.

I'll examine the library's main packages, providing a quick overview of the bases for the computational-graph and the implementation of the most famous neural models (e.g. MLP, LSTM, BERT), up to their application in natural language processing tasks, such as Named Entity Recognition and Question-Answering.

Workshop

July 12, 11:00am–2:00pm (UTC/GMT+3)
Intermediate level
Workshop is included to your conference ticket.

All 50 slots are already taken, yet all attendees will have an access to the workshop stream.
@drakos74
Senior Backend Engineer @Beat
"Key-Value Storage.
Building a distributed key-value storage from scratch with Go."
3 hours, 3 sessions:

Part 1: Key data-structures, indexing and storage layout
Part 2: Persistence, serialization and hashing
Part 3: Going distributed, consensus algorithms and cluster architectures

At the end we'll become familiar with the main concepts around key-value storage.
Apart from that, we will build and explore several data structures, get familiar with benchmarking in Go, but also explore known algorithms related to distributed systems.
Having lived in several different places during his childhood, ranging from a beautiful greek island to industrial cities in Northern Europe, Vangelis has developed an inherent curiosity and deep appreciation of new knowledge.

This has led him from Particle Physics under- and post-graduate studies, through Digital Media at the school of fine Arts in Athens, to software front- to back-end development in CRM systems, investment banking and trading across South, East and West Europe.

Ending up lately with golang in the ride-hailing industry.

Speakers and Schedule

UTC/GMT+3 Time Zone. All talks are in English.
Day 1 — July 11
Day 2 — July 12
15:00–15:10
Opening
15:10–15:50

Defer
Mat Ryer (UK)
@matryer, Co-founder @Pace.dev
15:50–16:00
Сoffee-break

Italo Vietro (Germany)
@italolelis, Head of Technology @Lykon
TRACK 1
TRACK 2
Damiano Petrungaro (Netherlands)
@damiano_dev, Senior Software Engineer @MessageBird
16:40–16:50
Сoffee-break

Dylan Meeus
(Belgium)
@dylanmeeus, Go software engineer @dploy.ai
TRACK 1
TRACK 2
17:30–18:10

Panel discussion "Adoption of Go" & Networking
Mat Ryer, Federico Paolinelli, Paschalis Tsilias, Iskander Sharipov

Matteo Grella (Italy) @matteogrella
Head of Artificial Intelligence @EXOP GmbH
TRACK 1
TRACK 2

Daniel Paulus
(Germany)
@adanielpaulus, Engineering Manager @Contentful
18:50–19:00
Сoffee-break
Endre Simo (Romania)
@simo_endre, Senior software developer @Reea
TRACK 1
TRACK 2
Iskander Sharipov (Russia)
@quasilyte, Senior Software Development Engineer @VKCOM
19:40–19:50
Сoffee-break
19:50–21:00

Panel discussion "Expectations from Go 2.0"
Elena Grahovac, Alexey Palazhchenko, Simon Aronsson, Diana Ortega
Speakers' rooms

Talk to speakers, ask questions, discuss any topic publicly in text chats and video calls
15:55–16:25

Mat Ryer
TRACK 1
16:45–17:15

Italo Vietro
16:45–17:15

Damiano Petrungaro
TRACK 1
TRACK 2
17:35–18:05

Dylan Meeus
16:45–17:15

Andrii Soldatenko
TRACK 1
TRACK 2
18:55–19:25

Matteo Grella
18:55–19:25

Daniel Paulus
TRACK 1
TRACK 2
19:45–20:15

Endre Simo
19:45–20:15

Iskander Sharipov
TRACK 1
TRACK 2
Workshop
Key-Value storage
11:00–11:10 Opening

Vangelis Katikaridis

@drakos74, Senior Backend Engineer @thebeat.co (Netherlands)
11:10—11:55 Part 1
Key data-structures, indexing
and storage layout
11:55–12:10
Coffee & networking break
12:10—12:55 Part 2
Persistence, serialization and hashing
12:55–13:10
Coffee & networking break
13:10—13:55 Part 3
Going distributed, consensus algorithms and cluster architectures
13:55–14:30
Coffee & networking break
Conference
15:00–15:10
Opening
15:10–15:50

What's in a name?
Dave Cheney (Australia)
@davecheney, Open source contributor and project member for the Go
15:50–16:00
Сoffee-break
Paschalis Tsilias (Greece)
@tpaschalis_, Backend Engineer @thebeat.co
TRACK 1
TRACK 2

Federico Paolinelli
(Italy)
@fedepaol, Principal Software Engineer @Red Hat
16:40–16:50
Сoffee-break
Ellen Körbes (Germany)
@ellenkorbes, DevRel @Tilt and @Garden
TRACK 1
TRACK 2
Ankur Anand (India)
@in_aanand, Developer @SAP Labs
17:30–18:10

Lightning Talks & Networking

Natalie Pistunovich (Germany)
@NataliePis, Lead developer advocate @Aerospike
TRACK 1
TRACK 2

Aaron Schlesinger (USA)
@arschles, Developer advocate @Microsoft Azure
18:50–19:00
Сoffee-break
19:00–19:40

Rediscovering Go
Mark Bates (USA)
@markbates, Co-founder @papercall, @gopherguides, and @gobuffalo
19:40–19:50
Сoffee-break
19:50 - 21:00
Afterparty
Speakers' rooms

Talk to speakers, ask questions, discuss any topic publicly in text chats and video calls
15:55–16:25

Dave Cheney
TRACK 1
16:45–17:15

Paschalis Tsilias
16:45–17:15

Federico Paolinelli
TRACK 1
TRACK 2
17:35–18:05

Ellen Körbes
17:35–18:05

Ankur Anand
TRACK 1
TRACK 2
18:55–19:25

Natalie Pistunovich
18:55–19:25

Aaron Schlesinger
TRACK 1
TRACK 2

Be the first to know the news!

Signing up the newsletter indicates you agree with our Privacy Policy.
If you decide that you no longer want to receive a newsletter, you can unsubscribe by clicking the "Unsubscribe" link, located at the bottom of each newsletter.

Last Tickets

Last Minute
218 BYN
170 BYN
Last Minute
170 BYN
218 BYN
65 EUR | 70 USD | 5150 RUB
85 EUR | 90 USD | 6550 RUB

Last year speakers and talks

Show more ⬇
@dlsniper, Romania
Developer Advocate for GoLand IDE @JetBrains
@nathj07, England
Senior Software Engineer @Turnitin
@dicaormu, France
Software Developer @Xebia France
@marcelcorso, The Netherlands
Engineering Manager @MessageBird
@0x12b, Sweden
Founder @Arctic Bit
@egor_grishechko, Russia
Senior Software Engineer @Insolar
Russia
Full-stack developer @Aviasales Core Team
VIDEO
Why Do We Need Our Own Bytecode Machine? (Lightning talk)
A managing partner at Ardan Labs, a high-performance development and training firm working with startups and fortune 500 companies.

He is also a co-author of the book Go in Action, the author of the blog GoingGo.Net, and a founding member of GoBridge which is working to increase Go adoption through diversity.
In his talk Bill will provide:
• guidance on the semantics to determine if a workload is suitable for using concurrency examples of different types of algorithms and workloads to see the differences in semantics
• and the different engineering decisions.
Software developer at Xebia France, with background in the JVM ecosystem and the Go language.

I work on data and cloud projects. I am passionate about Data Science, Software development and Software Craftsmanship.

Imagine that you need to develop an Optical Character Recognition system using neural networks. Why is not Go your first choice for this kind of project? In this talk I'm going to show you a traditional solution using Tensorflow and python, and also, how we can achieve a similar result using Go.

Build a deep learning project can be a challenging task. So, choosing the right tools is critical. In which level is the Go language ready to help developers and data scientists to create models for prediction?

During this presentation I'm going to show the generalities of the implementation of a model for OCR using first Tensorflow, which is one of the most popular frameworks in the market. Then, we will discuss after a Go-only alternative.
Julien has been working as a software engineer for more than a decade with a liking for DevOps and site reliability engineering. He has a Master in Computer Science and a broad experience in many layers from infrastructure to front-end.

He has worked on performance critical microservices at a global scale, he now focus mainly on DevOps and cloud native technology. He is a Google Developer Expert and is active in the Stockholm meetup community. He loves to share his knowledge about high performing teams, workflow and latest technologies.

In his spare time, he enjoys a good workout at the gym. He is a long time vegetarian. As he lived in Asia for a couple of years, he doesn't shake hands but rather bow to everybody as a sign of respect. Respect is one of his core values, along with kindness and wisdom.

Developers are taught to write code but what about deploying code? Using a serverless architecture, testing, building, deploying and monitoring are activities that happens in a cloud native environment. Coding is still done locally. What can we do to enable developers in the cloud?

Serverless enables to use services rather than running them ourselves or even building them. Writing code is actually a small part of the work, deploying and maintaining is often unknown which scares most developers. "Deploying Go Functions" is a talk to enable developers to shift mental model and explore (and maybe even build) their own serverless framework. It uses Go and OpenFaas in live demo to show that it is within the reach of most developers with a few lines of code and a different architecture.
Daniela is a Software Engineer at GoCardless and a Google Developer Expert in Google Cloud. Her main area of interest is backend programming, but she also likes to explore big data and machine learning.

She has been an advocate for the Go programming language for the past couple of years, but deep inside her heart, there will be always a place reserved for C++. On her little spare time, Daniela likes to play video games and run.
Imagine that: a Pac Man clone written in Go that runs on the terminal… with emojis! The purpose of this game is actually to provide a fun way to learn the Go programming language, instead of the traditional API and/or CRUD tutorials out there.

This project was originally designed to be a tutorial to be used in Women Who Go meetups, but in the end it is a fun way to learn Go for all the people who are tired of CRUD tutorials as their first contact to a language.

While the game itself is very simple and the use of the terminal as a "screen" abstracts the need for using graphical libraries, we are still able to show some powerful features like the use of goroutines and channels.

The talk will be mostly code with little to no slides.
Nathan is married with 2 nearly teenage children. As a family they love to be outdoors, hiking in the hills or having fun at the beach.

Nathan loves to mountain bike, his passion outside of work. As a Gopher he's been working in Go for 6 years, deploying micro-services and monoliths to production for a large ed tech business. He's also an active member and co-organiser of the local Go meetup - @golangnortheast
Go is a great language. Go has an excellent community. Those two make a powerful combination. However, I see and hear a lot of "just use the standard library" as advice given to newcomers.

We need to stop this, we need to be more nuanced. It indicates how powerful the language is but it minimises how great the community is. This talk will cover a number of very useful libraries across a variety of domains that we, at Turnitin, have used and found very effective. The result will be that we, as a community, can start to give better, more welcoming advice to the newcomers and to the old hands alike.
Roberto loves to write, hack, customize, patch and tailor any software that allows him to do so.

He has been writing go since 2015 for both structured, complex projects and scripts.

Go is all about parallelism and concurrency, but they don't come for free. This talk is about measuring their contention price, and being able to reduce it.

A deep dive on contention: what is it, when is it expensive, and how to tackle it.

Some light will be shed on ways to measure the computational power wasted waiting. The trace/blockand prof tools and libraries will be explained with actionable examples.

After showing how to find contention issues, some handy ways to address them will be shown:

  • Splitting work: different ways to change common algorithms to not have a centralized state.
  • From channels to mutexes: where it makes sense to make the switch, and why.
  • From mutexes to atomics: the real price of making this step, and how to make an informed choice about it.
Tech Lead, Scrum Master, Developer, Hydroponic window farmer and Longboarder. Simon likes to tinker with stuff until it works.

Whether it's dev teams, software or agile processes makes no difference. He's also extremely fond of gophers, vanilla coke and retro computers, especially the C64.
Much of the tooling used for infrastructure automation still consists of page after page of shell scripts. Our operations tools deserve the same level of care, quality and portability as the software we deliver!

What if, instead of building our ops tooling as scripts, we were to build them as services? With great golang features like cross-platform (and architecture) compilation, static linking, docker client api's and more - nothing is holding us back.

During 30 minutes, we'll be mixing code examples and theory in an attempt to discover why golang is so awesome for doing devops work.
A learner, a Gopher, a public speaker and a sailor.

She is leading the observability efforts at Fraugster, Berlin, and is organizing GopherCon Europe. Prior to that she was a Backend Developer at GrayMeta, Los Angeles, a co-founder at Connta, Nairobi, a Backend Developer at adjust, Berlin, and a Silicon Integration Engineer at Intel, Haifa. She graduated with a B.Sc. in Computer and Software Engineering from the Technion in Israel.

In her free time, Natalie is co-leading the Berlin chapters of the Go User Group and Women Techmakers.

Natalie will discuss a broad range of aspects of Go application security by taking on writing secure code, dependency management and Docker images and containers security.

Security Go applications comprise of many levels, from writing secure code, via making sure the dependencies are safe, picking secure image the application will be contained at and keeping it safe, and all the way to securing the image with the compiled application, both in the delivery transit and in rest.

In this talk we will discuss those aspects of application security by taking on writing secure code, dependency management and Docker images and containers security, we will then cover some pitfalls that are more common than you'd expect, like naming your PR "Remove Passwords", and propose some good practices and tools like using Vault for secret management and Go Report Card for evaluating external packages.
Florin is a gopher for a few years now, and he built many high-performance, distributed projects.

He helps gophers everywhere and works as a Developer Advocate for GoLand IDE at JetBrains. Florin is the former co-organizer of Go London User Group, GDG Berlin Golang, and AWS Berlin User Group.

In this talk, we'll have a look at how to use the popular Raspberry Pi 3 development platform with Go and add some smartness to it to automate our lives.

I'll use one of the projects from https://aiyprojects.withgoogle.com/ combined with gobot.io and show how with a few lines of code, you can turn a $50 kit into a smart home automation device.

The goal of the presentation is to show you how to have fun while working with Go, create something different, and learn how Go can be used in non-web or CLI projects.
Pseudo-random person. Backend developer. Gopher. GolangShow podcast co-host.

GopherCon Russia and Golang Moscow organizer and speaker.
Go provides powerful tools for designing concurrent programs, but does not give you strict guidelines on how to use them.

In my talk, I will explore this area, especially in the context for designing package APIs.
A software developer with 6 years experience in building backends, APIs and distributed systems.

Currently, my passion is distributed systems. Also, I like mobile development and sometimes develop android apps. My primary programming language is Golang. My second language is C#. ( I had a lot of experience with C#/.NET, but I moved to Go and that was the right choice).

I really like clean code and I am sure that Computer Science is one of the most important things in development process. Currently I am working as a Senior Software Engineer at Insolar. We are building a new-generation blockchain systems.

Channels is the well-known feature of the language. Sometimes it seems that there is a lot of magic in theirs working. But there is no magic in Go.

During the talk, I am going to tell about internals of Go channels. We will walk through uncharted land of source code, will have a glance at some interesting flags and realisation details. After the talk you will be sure, that magic and Go are almost incompatible.
I was born in the south of Brazil. My father is a developer and my mother a philosopher turned lawyer. I started coding as early as my father managed to convince me to get away from computer games. I was lucky to be exposed to two languages when growing up: I love to learn new languages: human and computer languages. I lived in Curitiba, Porto Alegre, Lyon, Metz, Barcelona and now for many years in Amsterdam.

I'm an Engineering Manager at MessageBird where I started as a developer. I'm not supposed to code but I still do because I love it.

We will discuss the evolution of the use of the Go language inside MessageBird. How it started small but with great impact till now when most new product development uses it.

We will give a broad overview of the most important systems written in go: the SMPP client and server, the voice platform, data pipelines, flow builder, conversations API, the monitoring infrastructure and from time to time dive deep into the anecdotal details of these projects for example how spinning 10 goroutines per SMS will broke our brand new kubernetes cluster.
I'm Artemiy and I got hooked on Go about 4 years ago, since then I have been actively involved in the life of the community, helping services to launch and work with Kubernetes, promoting Effective Go culture. Currently, I'm working on the short term rental service at Avito. At the same time, I'm focusing on developer relations, education and the growth of Go.

To sum up, I'm a backend developer, who likes to build infrastructure, try out cool new software, helps his peers to learn, and makes people laugh..

Building a monolith or service architecture? You needed an inter-service communication platform already yesterday! Why? What for? How? You'll get to know the answers from my talk!

We'll talk about what an inter-service communication platform really is, how it can help you right now, and how to build it quickly.
Also, I'll tell you about the pros & cons of application protocols that are good for it, why you don't need gRPC and what problems you'll face if you start using it.

This talk will be interesting for those who are just starting their way to SOA and those who are familiar with terms like OpenAPI, Swagger, gRPC, protobuf and thinking about request authorization and authentication, A/B tests, features segmentation and how to get everything that came so easily in monoliths.
A backend developer at Aviasales, previously frontend developer at Aviasales, open-source enthusiast.

Maintainer of a few popular open-source libraries in a variety of languages: go, js, node and php.

Some pictures from the previous conference

See 202 more on our Facebook page

How it felt over the last years

2018 Recap Video (61 seconds)
(◑‿◑)
2019 Recap Video (65 seconds)
(◐‿◐)

Programme committee

@DariaShabala

Full Stack IT Conferences Developer
@GitNation (ex @SPACE)
@Vetheslav

Golang Group Manager @iTechArt
Organizer of GoWayMeetup Minsk.

Passioned about observability & distributed systems. Addicted to go since 1.3.

Works as SRE at OZON.ru.

Programming since 2005. A fan of Go since 2015.
Daria has been organising tech conferences for 4+ years, including GoWayFest.

Now as a part of GitNation team she is organising React Summit, JSNation, React Advanced London, React Day Berlin conferences.
I'm passionate about organizing everything around. Clean architecture and clean code lover.

Golang forever!

Become a partner

Your Partner Account Manager is Misha Malikin:
+375 29 678−56−34, misha@eventspace.by

Partners
Participant Partners
General Media Partner

Organizers

SPACE is a professional team which stands behind a huge number of IT conferences and meetups
GoWayMinsk is a strong and friendly dev community located in Minsk. 80+ gophers regularly meet to share experience, knowledge and new ideas on Golang.
Our portfolio of conferences:
Misha Malikin
Partnership and
corporate tickets
+375 29 678-56-34
misha@eventspace.by
Maria Berezko
Content and organization
+375 29 565-14-53 maria@eventspace.by
We've been standing behind an impressive number of tech conferences in Minsk for the past 6 years and now we are scaling worldwide to expand our passion to Technologies and Community.
Check out our events!

Contact us

Previous Conferences
Previous Years' Videos
Previous Years' Photos
We use cookies to provide the best website experience.
OK, don't show again
Close
GoWayFest 4.0 Conference Code of Conduct
All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct (CoC). Organisers will enforce this code throughout the event. We are expecting cooperation from all participants to help ensuring a safe environment for everybody.

GoWayFest 4.0 is a community conference intended for networking and experience exchange in the developers community.

GoWayFest 4.0 Conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, sexual orientation, disability, physical appearance, body size, race, or religion. We do not tolerate harassment, discrimination, abasement and any form of disrespect.Sexual language and imagery is not appropriate for any conference venue, including talks.

We urge to avoid offensive communication related to gender, sexual orientation, disability, physical appearance, body size, race, religion, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact. Attending the event under the influence of alcohol or other narcotic substances is unacceptable.

Exhibitors in the expo hall, sponsor or vendor booths, or similar activities are also subject to the anti-harassment policy. In particular, exhibitors should not use sexualized images, activities, or other material. Booth staff (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment.

Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organizers.

Expected Behavior
  • Participate in an authentic and active way.
  • Exercise consideration and respect in your speech and actions.
  • Attempt collaboration before conflict.
  • Refrain from demeaning, discriminatory, or harassing behavior and speech.
  • Be mindful of your surroundings and of your fellow participants. Alert organisers if you notice a dangerous situation, someone in distress, or violations of this CoC.
Thank you for helping make this a welcoming, friendly event for all!

Need Help?
Contact the organizer at maria@eventspace.by.
Corporate tickets booking
Prices are inclusive of all taxes
Last Minute Online Ticket @170 BYN
+
Submitting the form indicates you agree with our Privacy Policy