Giter Site home page Giter Site logo

developer20's Introduction

Bartłomiej Klimczak [email protected]
Technologies Go, Kubernetes, Docker, AWS, MySQL, PostgresSQL, Kafka
Distinctions Google Developer Expert in Go category

Blog posts

Experience

Go developer at G2A

(July 2020 - June 2021)

I'm building the logistic part of the platform. I build Go (micro)services that support purchasing a physical product as well as integrating with external services. One of my challenges was understanding the domain correctly to be able to rewrite the monolith (Magento) application. I had to make sure that, at the first phase, the behavior doesn't change but the new implementation is open to new features and improvements. I modeled the part of the domain I was responsible for.

What's more, I was a member of a team that introduced OpenTelemetry in the company. I prepared a Go library helped developers to migrate to the new solution.

Technologies I use: Go, Kubernetes, Docker, RabbitMQ, Kafka, ELK

Go developer at Brainly

(May 2018 - July 2020)

I've been working in a team that focused on engaging users to have more interaction with the page. I built several services that support it. One of them was a service that's tracking user's pageviews (similar to Google Analitycs). The value it brought was associating specific page views with concrete users. It gave us the ability to create very targeted campaigns.

Technologies I use: Go, Kubernetes, Docker, RabbitMQ, GraphQL, ELK, AWS

Senior PHP developer at FreshMail

(July 2016 - May 2018)

I've been part of the core team that builds the e-mail marketing platform. One of my responsibilities was maintaining the legacy code.

Technologies I use: PHP, MySQL, AWS

PHP developer at Integer (InPost)

(February 2014 - July 2016)

I built a "Manager Paczek" (Parcels Manager). It's a tool for retail customers. They can create and manage their parcels (pay for shipment, notify addressee via sms/email etc). I was building the backend for the whole solution.

Technologies I use: PHP, MySQL

PHP developer at Polcode

(July 2011 - July 2014)

It was a freelance possition where I've been working on building web sides based on Magento, Wordpress, Joomla and so on. My responsibilites was contacting with clients, gathering requirements and developing the webside.

Technologies I use: PHP, MySQL, JS

Projects

I'm a huge fan of opensource so I have my own projects that support the community :)

  • https://developer20.com/ - It’s my blog where I share my knowlage with others. I focus on Go development but you can find much more there
  • GoBDD - BDD framework for Go. It’s goal is to give as simple and powerful BDD framework for Go.
  • Cyclop - It’s a tool which analize Go code and caluclates its cyclomatic complexity
  • GoCracow and Golang Poland - Local meetup focused on Go. I lead the community as well as give talks.

Hobby

  • I like playing Dota2 and chess
  • I learn to play ukulele (but I'm just a beginner)

developer20's People

Contributors

bartlomiej-klimczak-cko avatar bkielbasa avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

developer20's Issues

Top 5 design patterns

There are many design patterns. In this art, I'd like to describe those that I use the most.

Cancellable `io.Reader`/`io.Writter`

by default, all io.Reader and io.Writer aren't cancelable. It's quite simple to add it to them. In this blog post, I'll describe a few ways of doing it.

Create a gif on-the-fly that never ends.

It's possible to create a GIF file that's infinite. If we make it on the fly, we can basically stream a video.
The project's goal would be to show this feature in a project written in Go. It doesn't have to be video streaming but a simple infinite GIF file.

Golang for haters

There are a ton of articles/talks that complain about Go. Sometimes they are right. Sometimes don't. In this article, I want to take a look at all of their arguments and try to explain or say if they are right or not.

Sounds fun!

Different concurrency patterns

When goroutines, we have multiple ways we can handle the concurrency. We can use context package, sync package, or patterns like Fan-in and Fan-out/pipeline/actors.

In this series (?) of articles, I want to describe most of them with their pros and cons.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.