BG
EN

11 - 13th of October

A software development conference for developers, by developers

HackConf is Bulgaria's premier software development conference, happening in Sofia.

Organized “by developers, for developers”, it covers a wide range of software development topics, regardless of the tech stack.

HackConf 2019 will include a full day of workshops on 11th of October, and two parallel tracks of talks during both conference days - 12th and 13th of October.

Agenda

Workshops
Day 1
Day 2
Floor 6
10:00 - 11:30
The 10 productivity commandments
Vassilena Valchanova
X
Vassilena Valchanova

The 10 productivity commandments

I’ve tried dozens of productivity techniques - out of sheer necessity. I’m working on 4 major projects at a time, not to count a blog, a series of science events, and a course with 600 students! I’ll share the methods, routines, and tools that worked. No fluff, just actionable takeaways.

Floor 6
10:00 - 13:00
LEGO® SERIOUS PLAY® - different approach to your everyday challenges
Ieva Treija
X
Ieva Treija

LEGO® SERIOUS PLAY® - different approach to your everyday challenges

LEGO® SERIOUS PLAY® method is useful for fostering innovations, making strategic decisions, building teams and creating products. It is a unique method as it facilitates engagement as well as hearing, taking the opinion of each and every member of the group into account.

Floor 6
10:00 - 13:00
Building a high-performance, distributed and scalable microservice orchestrationt
Timo Hentschel
X
Timo Hentschel

Building a high-performance, distributed and scalable microservice orchestrationt

We will analyze the performance of a provided system, then separate pieces of code into microservices. 

We will then introduce a flexible technology for microservice orchestration, configure it and hook the microservices in. Finally, we will again analyze the performance.

This workshop is for advanced developers and we will require some software to be downloaded and installed before the workshop, there will be no time to do this during the workshop.

Hall 10
10:30 - 13:30
Behind the scenes of React Redux
Kamen Kotsev
X
Kamen Kotsev

Behind the scenes of React Redux

We will implement Redux and make it work with React from the ground up. We will also implement some redux forms and tools after that. We will implement a shared state. 

We will create the basic functionality of redux forms and try to understand some of the decisions behind the implementation. We will also implement a different tool for working with forms that will be very similar to the existing lib called "Formik".

Hall 10
10:30 - 13:30
Angular Universal - be more SEO/CDN/User-friendly with server-side rendering
Maciej Treder
X
Maciej Treder

Angular Universal - be more SEO/CDN/User-friendly with server-side rendering

Are you ready for production? Are you sure? Is your application prefetchable? Is it readable for search engine robots? Will it fit into CDN? Do you want to make it even faster? Meet the Server-Side Rendering. Learn how to implement it in your application and about best practices.

Hall 10
10:30 - 13:30
Git from Scratch
Rayna Stankova Ivaylo Ivanov
X
Rayna Stankova Ivaylo Ivanov

Git from Scratch

Thank you for your interest in Git! Git is awesome. Come and understand why. Git is widely used for distributed collaboration among programmers to track their changes and to share between them. Come and understand how.

Hall 10
10:30 - 13:30
Learn Python & Selenium the fast way
Alexander Todorov Anton Sankov
X
Alexander Todorov Anton Sankov

Learn Python & Selenium the fast way

This workshop will teach the basics of Python: functions, common data types, operations with them; control flow - if conditions, for and while loops; running the tests in Python! Then comes Selenium - locating element, waiting for them to appear, reading text and attributes from the HTML elements! 

Finally, we combine everything into a small program! 

- For each module, there are links and instructions for preparation. It is best to read all of these before the workshop;

- Instructor will explain the theory from the preparation section and focus on writing programs to solidify the knowledge; 

- If you don’t complete the tasks on time for the given module you lose 1 life; 

- When all of your 3 lives are lost it is GAME OVER!

Hall 3.2
10:30 - 13:30
Crash course in JS Event loop
Martin Chaov
X
Martin Chaov

Crash course in JS Event loop

Event loop demystified with practical examples. If you ever tried understanding JS’ concurrency model and failed, now is the time to get things cleared out!

Hall 3.2
10:30 - 13:30
Python speedup using code optimizations
Bogomil Tsekov
X
Bogomil Tsekov

Python speedup using code optimizations

This workshop will focus on the steps needed to optimize existing code, so that performance can be increased. It will provide some internal details of how Python works, so that simple rewriting of the code can influence on the speed/memory parameters during runtime;

It will give a way to measure performance of programs so that different changes can be compared;

It will remind that using effective mathematical algorithms is important ingredient for the recipe for optimizing a program. These techniques can be applied to identify bottlenecks in the execution of the program.

Hall 3.2
10:30 - 13:30
Playing ATARI Games with Deep Reinforcement Learning
Svetlin Penkov
X
Svetlin Penkov

Playing ATARI Games with Deep Reinforcement Learning

Deep Reinforcement Learning (DRL) is one of the most recent and promising fields in AI. 

In this workshop, we will implement a DRL agent that learns to play ATARI games. We will introduce key concepts from DRL as well as some Python packages such as Chainer and OpenAI Gym.

Floor 6
13:30 - 16:30
Sales Skills for IT People
Iancho Dimitrov
X
Iancho Dimitrov

Sales Skills for IT People

Applying for a new job? Trying to convince management your project needs regular refactoring? About to found your own start-up? 

In cases like these sales skills help a lot for achieving success. Learn and experiment with successful sales approaches - mapped to real IT professional’s life scenarios.

Floor 6
13:30 - 16:30
Micro service lifecycle - from code to production
Kristiyan Georgiev Simona Mitrenova
X
Kristiyan Georgiev Simona Mitrenova

Micro service lifecycle - from code to production

In this workshop you will learn how to develop simple SaaS micro service Java application with Angular frontend, how to test it and deliver it to your clients using continuous integration and continuous delivery. Using Kubernetes, we will scale and manage our SaaS application.

Floor 6
13:30 - 16:30
Remote IT Work Career Workshop
Venera Sokolova
X
Venera Sokolova

Remote IT Work Career Workshop

Being an advocate for remote work and working to gather remote teams worldwide Venera started coaching people how to work Remote/Freelance/Contractor roles.

She is going to talk about freelance platforms, how to make an online presence that helps you be noticed and a portfolio that works, how to get a remote job and what you need to know about contracts, security while being remote and getting paid on time. 

Hall 10
14:30 - 17:30
React Native Workshop
Kadi Kraman
X
Kadi Kraman

React Native Workshop

React Native is a framework for building native applications using React. You will see how React Native differs from React on the web, get an overview of fundamental building blocks of a React Native app, and use this new-found knowledge to build your very first app!

Hall 10
14:30 - 17:30
Unit Testing with Java
Svetlozar Dimitrov
X
Svetlozar Dimitrov

Unit Testing with Java

Unit tests are typically a developer's responsibility. The main metric associated with them is test coverage and it's measured in percentage. So getting to 100% should mean quality is ensured, right? Wrong! This workshop will explain the basic concepts behind writing effective unit tests, what test coverage really means and why we need it, and how to enhance our tests with mocks and stubs.

Hall 10
14:30 - 17:30
Mocking in Python
Ilian Iliev
X
Ilian Iliev

Mocking in Python

How to isolate one module from another during testing? And how to test functions that depend on date, time or 3rd party services? By mocking we can use “fake” objects to make your tests faster and simpler. We will take a look at the build-in mock module, Freezegun and Mocket.

Hall 10
14:30 - 17:30
Declarative deployment and monitoring Kubernetes
Mihail Velikov
X
Mihail Velikov

Declarative deployment and monitoring Kubernetes

Workshop Part 1:


Declarative deployment to Kubernetes with Weave Flux
1. A short introduction to Docker and Kubernetes
2. Explaining how Weave Flux works practically
1. Setting up a local development environment for all participants - access to the cluster + GitHub repository
2. Have each participant installing flux
3. Deploy example applications with flux
4. Deleting applications 


Workshop Part 2:


Monitoring Kubernetes with Prometheus and Kubernetes Dashboard
1. Explaining Prometheus/Kubernetes Dashboard
2. Introducing helm charts
3. Install Prometheus + Kubernetes dashboard
4. Showing metrics and Grafana dashboards
5. Showing Kubernetes dashboards, how to see logs and so on

Hall 3.2
14:30 - 17:30
E2E testing of the Single Page Applications
Maciej Treder
X
Maciej Treder

E2E testing of the Single Page Applications

Get an in-depth overview of the end to end (E2E) testing techniques of Single Page Applications. 

In this workshop you will learn how to set up a test environment, remote environment for the Continuous Integration, report your test results in a nice and readable form and much more. 

Learn more about things like Jasmine, Protractor, Selenium, TypeScript, Angular and more...

Hall 3.2
14:30 - 17:30
Building your first Virtual Reality App
Georgi Atanasov Panayot Cankov Hristo Zaprianov Deyan Yosifov
X
Georgi Atanasov Panayot Cankov Hristo Zaprianov Deyan Yosifov

Building your first Virtual Reality App

Virtual reality is steadily transitioning from an enthusiast-only technology to a mainstream ecosystem. Besides gaming and entertainment, multiple business verticals already see huge value in applying VR in their workflow. Building apps for VR is incredible fun but requires new skills and knowledge.

Hall 3.2
14:30 - 17:30
Public Speaking for Technologists
Daniel Maher
X
Daniel Maher

Public Speaking for Technologists

Interested in speaking at a conference but don’t know where to start? Your talk has been accepted but you’re nervous about being on stage? Don’t worry—I’ll get you sorted. In this workshop, we’ll work through things like idea generation, the CFP process, slide style, stage presence, and more!

Floor 6
17:00 - 20:00
Golang 101
Evgeni Kunev
X
Evgeni Kunev

Golang 101

WHAT IS IT ABOUT? 

There are so many programming languages out there, and new ones are popping up almost every day. Which one to choose? Where to start? To stay ahead of the game by broadening your skillset, learning a new language is important for your professional growth. Some of the developers claim that Golang is a neat combination of the best features of the most popular languages. 

You will have the chance to find this out yourself at this workshop. Join us at the Golang 101 workshop. We’ll get familiar with Go - a modern language that makes it easy to build simple, reliable, and efficient software. We’ll build a real-world application and learn the basics of programming in Go. 

Golang is also known as Google Go, which is the programming language created by (as you may have already guessed) Google. Golang was initially developed at Google in the year 2007. 

YOU’LL NEED TO HAVE: A laptop and a charger Go installed (follow https://golang.org/doc/install). If you’re having issues, it’s ok, you can come before the workshop and we’ll help you. 

WHAT WILL I LEARN DURING THE WORKSHOP? 

You will be introduced to Golang and will learn the basics of this programming language together with experienced professionals from the Uber Engineering Sofia team. Moreover, you will meet like-minded people from the tech field. 

WHO IS IT FOR? 

The workshop is for people who are passionate about coding and have some programming experience but are new to Golang. 

Floor 6
17:00 - 19:00
Build a Serverless Web Application with AWS
Daniel Rankov
X
Daniel Rankov

Build a Serverless Web Application with AWS

 The workshop is most appropriate for Beginner level of cloud and AWS experience. We are going to do an overview of the AWS services in use.

  You'll create a simple serverless web application that enables users to request unicorn rides. The application will present users with an HTML based user interface for indicating the location where they would like to be picked up and will interface on the backend with a RESTful web service to submit the request and dispatch a nearby unicorn. The application will also provide facilities for users to register with the service and log in before requesting rides.

09:00 - 10:30
Registration (12th of October)

Bring your ticket on a mobile device or print it

Hall 1
10:20 - 10:30
Opening
Hall 1
10:30 - 11:10
The Groundhog Development Method
Bozhidar Batsov
X
Bozhidar Batsov

The Groundhog Development Method

I guess many of you are young enough to have never heard of the "Groundhog Day" movie (released way back in 1993), which serves as the inspiration for this talk's title. Without ruining the great movie for you I'll tell you it's about a man whose life is stuck in a loop, and unless he changes something his life is not going anywhere.

Does this story remind you of something else? A lot of software projects are also stuck in a loop - starting strong, quickly drowning in complexity, eventually discarded and replaced by projects which ultimately suffer a similar fate. You've seen this happen many times, right? 

In this talk we'll discuss what exactly is wrong, how did we end up in this mess, and what should change to break that vicious cycle. And maybe we'll have a bit of fun while doing so!

11:10 - 11:20
Coffee break
Hall 1
11:20 - 12:00
Success Hacking 101: How to Survive the Commoditization of Your Job
Matt Landheim
X
Matt Landheim

Success Hacking 101: How to Survive the Commoditization of Your Job

Tech and tech talent are becoming commoditized. This is happening within organizations and within teams. Although tech hiring is still tight, globalization, automation, AI, Cloud, skill shift, and other tectonic movements are changing the tide. What used to be irreplaceable tech and tech talent can now be bought on the open market and substituted for what is already in place. For software engineers, this means our tech skills are increasingly replaceable, which means we are increasingly replaceable. It may be hard to believe when software engineers are in high demand and our wages are skyrocketing, but the writing is on the wall: Software engineers need much more than just tech skills to survive and add real value to today’s teams and organizations. Come find out what skills you should be learning and practising to stand out in the software engineering crowd, be irreplaceable and invaluable to organizations and teams, and succeed in life.

12:00 - 13:30
Lunch break
Hall 1
13:30 - 14:10
If you can drive you can architect a system -what you shouldn't forget when architecting a system
Ayelet Sachto
X
Ayelet Sachto

If you can drive you can architect a system -what you shouldn't forget when architecting a system

Architecture and solution design can be challenging. In this talk, I will demonstrate how architecting a solution can be as natural as driving a car, implementing similar concerns and logic to your design can make you a better engineer and your services more efficient.Driver license is not required.

Hall 2
13:30 - 14:10
The Useless Leader is the Best Leader!
Alexander Popov
X
Alexander Popov

The Useless Leader is the Best Leader!

Command & Control is still the predominant leadership style in the software industry, except maybe in the most successful super-growth organisations. The talk explores why is there a trend and what we can learn from the successes of existing and past Unicorns when it comes to building and leading a high quality engineering team. I claim leaders should “serve” instead of “command” - act as enabler to all the smart people in their teams and exploit the power of the “subject matter experts” by empowering them with making decisions and owning the delivery. My engineers and managers do not work for me. I work for them - they are the “boss”. That works great for me, for my engineering team and for the organisation. The talk aims at sharing how and why that works, what are the problems that it imposes and how to mitigate or solve them.

14:10 - 14:20
Coffee break
Hall 1
14:20 - 15:00
SOLID principles - {part 1 of 5} - "S" the most misunderstood principle
Martin Chaov
X
Martin Chaov

SOLID principles - {part 1 of 5} - "S" the most misunderstood principle

In object-oriented computer programming, SOLID is a mnemonic acronym for five design principles intended to make software designs more understandable, flexible and maintainable. “Single purpose” sounds self explanatory and developers usually assume they understand it and move on towards the other principles. In this talk I am going to take them back few steps and explain what stands behind this principle and how to apply it to multiple levels of the application architecture.

Hall 2
14:20 - 15:00
DevCorp: choose your own adventure
Pauline Vos
X
Pauline Vos

DevCorp: choose your own adventure

This interactive talk will give you some valuable technical and soft skills to take with you on your real-life professional journey. Based on a mix of personal experience, agile methodology, and software design principles, this story has several possible endings. Audience vote decides.

15:00 - 15:20
Coffee break
Hall 1
15:20 - 16:00
Does functional programming actually help in production?
Robert Avram
X
Robert Avram

Does functional programming actually help in production?

The presence and adoption of functional programming concepts in mainstream languages has continuously become more prevalent within the last few years. This leads one to believe, that the things this paradigm has to provide are apparently, in some way, beneficial. Now two questions arise. To what extent is it beneficial and how do these things actually make a difference in my production application? In this talk I’d like to travel across the planes of functional programming and show you how this paradigm helped us, what concepts made a difference and how it may generally, probably, be able to help others.

Hall 2
15:20 - 16:00
Image Fingerprinting with Keypoints
Vassil Lunchev
X
Vassil Lunchev

Image Fingerprinting with Keypoints

Here is the problem - we have 5,000,000 .jpg files, many of which are the same. We have to: - Find all duplicated images - Find them even if they were edited in Photoshop - Find them even if the images are different (from different cameras) but the objects on the photos are the same. What is Image Fingerprinting and how to do Image Fingerprinting with Keypoint Matching? Come at #hackconf this October 11-13 and learn from Vassil Lunchev.

16:00 - 16:10
Coffee break
Hall 1
16:10 - 16:50
WTF, Languages!?
Alexander Georgiev
X
Alexander Georgiev

WTF, Languages!?

Do you know what “(new Date()).getYear()” will return in Javascript? What does the expression “True is False == False” evaluate to in Python? Is 10 * (1 / 10.0) == 1 in C++? Come and see - the results might shock you! These 3 weird tricks helped Alexander become a better programmer. Enlarge your knowledge!

Hall 2
16:10 - 16:50
The click that will bring your weekend back
Tosho Trajanov
X
Tosho Trajanov

The click that will bring your weekend back

Working with both startups and enterprises, over the years I noticed that many of the companies have challenges setting up strong release practices. That results with risky, error-prone releases followed up with a lot of bugs which cost them a lot of resources.

With this talk, I am aiming to inspire people to step back from the day to day operations and think about how setting up a fully automated process is going to benefit the companies they are working with and at the same time get their weekends back. I will talk about optimizing the release process on different levels in the organization, as well as leveling up the quality of the technology. I will also introduce some tools and techniques to the audience that helped us create a steady pipeline.

The talk is perfect for tech leads, CTOs, or software engineers who are looking forward to bringing improvement in their organizations.

16:50 - 17:10
Coffee break
Hall 1
17:10 - 17:50
Debugging people
Mila Petkova
X
Mila Petkova

Debugging people

How therapists debug people? How can I fix and patch myself? How do I design the version of Me2.0? These are valid questions and I will address them in my talk. I am psychotherapist who works mostly with clients from the IT sector and I have a few things to share about mental health in the field.

Hall 2
17:10 - 17:50
ES9, ES10, and Beyond. ECMAScript Release Roadmap.
Martin Ivanov
X
Martin Ivanov

ES9, ES10, and Beyond. ECMAScript Release Roadmap.

What you’re about to learn is how ECMAScript standards are built, who is responsible for that, what are the exact features and what is the way to propose an extension? We will also go through the new features which ECMAScript 2018(ES9) and ECMAScript 2019(ES10) are shipping and what further improvements can be expected in ECMAScript 2020(ES11). We won’t stop at the technical overview but give life to the talk with some practical examples of how the standards differ in real life!

17:50 - 18:00
Coffee break
Hall 1
18:00 - 18:40
Scaling your data layer
Ivan Vergiliev
X
Ivan Vergiliev

Scaling your data layer

So you built your product, and scaled it to a point where you’re starting to collect a lot of data and outgrowing your relational database. How do you scale your data storage systems to handle the volume and load? During my talk on “Scaling out - from First Principles” at HackConf 2018, this was one of the main follow-up questions, so this talk will cover in more detail a set of different approaches to scaling, depending on the requirements, and from first principles again.

09:30 - 10:30
Registration (13th of October)

Bring your ticket on a mobile device or print it

Hall 1
10:30 - 11:10
Performance Profiling Techniques to Make Your Code Awesome
Tim Driscoll Rositsa Kotseva
X
Tim Driscoll Rositsa Kotseva

Performance Profiling Techniques to Make Your Code Awesome

In our lecture, we will cover the following material:

 - Availability Heuristic and Risk Perception

 - Performance optimizations

- What kind of performance optimizations exists? How/When to apply them? 

- Program Profiling techniques and tools, such as RunSnake and SnakeViz.

- Actual Code example – show the program bottlenecks, create a profiling file and explain how to increase the performance.

11:10 - 11:20
Coffee break
Hall 1
11:20 - 12:00
Ask Me Anything - Panel Session
Ivan Vankov Marian Marinov
X
Ivan Vankov Marian Marinov

Ask Me Anything - Panel Session

12:00 - 13:30
Lunch break
Hall 1
13:30 - 14:10
Be nice, help the person who hacks your servers to get your data
Vranac Srdjan
X
Vranac Srdjan

Be nice, help the person who hacks your servers to get your data

Where are your credentials and secrets stored? In .env files or in environment variables, or even worse in config files? Are your primary AWS keys shared amongst developers? Do you still have SSH keys from former employees on your servers?

Hall 2
13:30 - 14:10
Cache me outside - Caching Methodologies and Architectures
Anthony Dang
X
Anthony Dang

Cache me outside - Caching Methodologies and Architectures

Caching can be your best friend or your worst best-friend. A poor cache implementation can mean the difference between experiencing blazing fast performance or unexplained random slowness, or both! 

It can even result in random stale (out of date) content which you can’t explain. In this presentation, we will demo and compare different caching methodologies, and their perceived real-world uses. We will discuss Donut cache, Memory cache, Redis, Varnish, CDNs, and many more. We will dive into demos of real-world 

implementations which can cause unpredictable problems. Some of these are horrible, and some are face-palm. At the end of this presentation, you will be aware of the different trade-offs with each caching methodology, and which might best for your situation.

14:10 - 14:20
Coffee break
Hall 1
14:20 - 15:00
The Elements of Style in Programming
Bozhidar Batsov
X
Bozhidar Batsov

The Elements of Style in Programming

Hall 2
14:20 - 15:00
What Can't Deep Learning Do?
Svetlin Penkov
X
Svetlin Penkov

What Can't Deep Learning Do?

Deep learning has enabled unprecedented achievements in computer vision, natural language processing and reinforcement learning. In this talk, however, we will focus on its limitations and outline a few state of the art problems which we need to solve before we truly advance the capabilities of AI.

15:00 - 15:20
Coffee break
Hall 1
15:20 - 16:00
A Thousand Words: How I'm still not using GUIs in 2019
Lucas Fernandes da Costa
X
Lucas Fernandes da Costa

A Thousand Words: How I'm still not using GUIs in 2019

Is an image really worth a thousand words? In software engineering, it isn’t. In this talk, I’ll explore the UNIX philosophy and modern development workflows to show you how practical, timeless and elegant plain-text tools are, and teach you how to use them efficiently to leverage productivity.

Hall 2
15:20 - 16:00
Notes from My Travels: Building Effective Teams When You're in Different Places
Euan Finlay
X
Euan Finlay

Notes from My Travels: Building Effective Teams When You're in Different Places

Flexible working and distributed teams are key to how we work in technology, and many companies are embracing the benefits. However, it’s not an easy task to help teams collaborate effectively across time zones. 

I’ll share my personal experiences and case studies about leading distributed teams.

16:00 - 16:10
Coffee break
Hall 1
16:10 - 16:50
Productivity for developers
Radoslav Stankov
X
Radoslav Stankov

Productivity for developers

A lot of people talk about productivity. But this is one of those terms where everyone uses, but nobody clearly understands. 

- I’m going to share my process to be active and deliver quality work. 

- Define what is “productivity,” “effectiveness” and “process”. 

- How to split and define tasks. 

- What to do when you stuck at a problem. 

- How to improve your tooling. 

- How to deal with non-coding activities like meetings, emails.

Hall 2
16:10 - 16:50
Hardware connectivity on the progressive web
Majid Hajian
X
Majid Hajian

Hardware connectivity on the progressive web

The browsers can actually take control of physical devices in the real world like lightbulbs, robots, printers, NFC tags, toys, and even drones by providing new web standard hardware connectivity APIs such as WebBluetooth, WebUSB, WebNFC and etc. 

On the other hand, Progressive web apps open a new era to build a web application that works offline and resemble a native application. Hence, every day we are getting closer to run web apps only on browsers that don’t need to be installed from any app store and it will take control of hardware around us.

 In this session, I am going through some of the web capabilities to connect devices into a progressive web app and show how the web could go beyond the browsers and take control of our devices around us.

16:50 - 17:00
Coffee break
Hall 1
17:00 - 17:40
Introduction to Machine Learning
Stefan Kanev
X
Stefan Kanev

Introduction to Machine Learning

Machine Learning / Deep Learning is where all the hype is. From automation to self-driving cars, there are a lot of applications. To be effective in it, you need to combine various skills – engineering, statistics and programming. 

This talk will aim to do three things: (1) sketch the lay of the land in the world of ML, (2) give an overview of the most popular tools and (3) sketch the next steps if you're considering specializing in it.

 By the end of it, you should walk away with a basic understanding of what machine learning is and how to start learning and applying it.

Hall 1
17:40 - 18:00
Closing
18:00 - 20:00
Goodbye drinks

Talks

Stefan Kanev

CTO @Receipt Bank

X
Stefan Kanev
About:

Stefan has been involved in programming since he remembered. He loves Ruby, Vim,  automated tests, bowls, Apple products and all kinds of exotic programming languages. During his most busy time, he programs in Rails, but when he's free - occasionally teaches at FMI of Sofia University, writes a lot of code, which later deletes it, and apart from that, he also tries not to kill himself with his mountain bike. He doesn't like PHP and he is ambivalent to Java.

Bozhidar Batsov

VP of Engineering @Toptal

X
Bozhidar Batsov
About:
Bozhidar loves computers in general and programming in particular. His fanatic devotion to Emacs is known world-wide. Bozhidar spends a lot of his time on GitHub, contributing to various Ruby, Clojure and Emacs Lisp open-source projects. He’s also passionate about building teams and products, helping people achieve their full potential, and the fine art of personal productivity.

Believe it or not, Bozhidar has (fun) interests outside computers and IT as well! We won't, however, bore you with those here.

Talk:

The Groundhog Development Method

I guess many of you are young enough to have never heard of the "Groundhog Day" movie (released way back in 1993), which serves as the inspiration for this talk's title. Without ruining the great movie for you I'll tell you it's about a man whose life is stuck in a loop, and unless he changes something his life is not going anywhere. 

Does this story remind you of something else? A lot of software projects are also stuck in a loop - starting strong, quickly drowning in complexity, eventually discarded and replaced by projects which ultimately suffer similar fate. You've seen this happen many times, right? In this talk we'll discuss what exactly is wrong, how did we end up in this mess, and what should change to break that vicious cycle. And maybe we'll have a bit of fun while doing so!

Ivan Vankov

Principal Blockchain Architect @CognitionFoundry

X
Ivan Vankov
About:

Ivan Vankov (gatakka) has a very diverse background in different IT technologies like back-end development, Machine learning, security, cryptography, Blockchain and system architectures. Currently, he is principal blockchain architect and consultant.

Marian Marinov

Chief System Architect @SiteGround

X
Marian Marinov
About:

Marian is a system administrator by heart. He is working with Linux for almost 20 years. Currently he is Head System Architect of Siteground.com, CEO of 1H Ltd. and CTO of Kyup.com. He is a big fan of FOSS and regularly speaks at different FOSS conferences around the world. Marian also helps with the organization of OpenFest - Bulgaria's biggest FOSS conferences. In his spare time he teaches Linux system administration and Network security courses in Sofia University and SoftUni.

Pauline Vos

Senior Software Engineer @Werkspot

X
Pauline Vos
About:

Pauline is a PHP developer currently employed by Werkspot in Amsterdam. She likes good, clean software design and being as efficient (lazy) as possible. Also cocktails, video games and animal memes. She lives in Amsterdam with her cat, Phife Cat, and about three plants.

Radoslav Stankov

Developer @Product Hunt

X
Radoslav Stankov
About:

Web developer with 15+ years of experience, currently is head of engineering at Product Hunt (by Angel List). Lately, he is juggling between Ruby, Javascript projects, with the belief that it’s equally important to work both on the frontend and on the backend. Organizer of React.NotAConf conference and React.Sofia meetup.

Talk:

Productivity for Developers

A lot of people talk about productivity. But this is one of those terms where everyone uses, but nobody clearly understands. Rado Stankov is going to share his process to be active and deliver quality work.

 - Define what is “productivity,” “effectiveness” and “process”. 

- How to split and define tasks. 

- What to do when you stuck at a problem. 

- How to improve your tooling. 

- How to deal with non-coding activities like meetings, emails.

Martin Chaov

Software Architect @SBTech

X
Martin Chaov
About:
Who are you? - Martin Chaov
 Why do you want people to know about you? - I don’t want people to know about me. I want people to do good software. 
Who’s your favorite member of One Direction? - Is this something solved with Dijkstra shortest path algorithm?

I don’t take myself too seriously. I am a tech enthusiast. Most of my sentient life I have tinkered with tech. In IT I’ve done almost every job imaginable. I was doing cables, PC assemblies, IT support, domain controllers, networks, ISP, graphic design, software development… And I am equally bad at everything, meaning I have a lot of hands-on experience to share :)

Talk:

SOLID principles - {part 1 of 5} - "S" the most misunderstood principle

In object-oriented computer programming, SOLID is a mnemonic acronym for five design principles intended to make software designs more understandable, flexible and maintainable. “Single purpose” sounds self explanatory and developers usually assume they understand it and move on towards the other principles. In his talk Martin Chaov is going to take them back few steps and explain what stands behind this principle and how to apply it to multiple levels of the application architecture.


Anthony Dang

Technical Director @Radley Yeldar

X
Anthony Dang
About:

Anthony is the Technical Director at Radley Yeldar (London, UK). He writes tech articles, and is a regular presenter at conferences & meetups. He loves automation & development processes, experienced in scaling high performing teams across multiple countries, a Scrum certified Agile enthusiast, and a vocal proponent of Behaviour Driven Development. Originally from Sydney, Australia, he is now based in London.

Talk:

Cache me outside - Caching Methodologies and Architectures

Caching can be your best-friend or your worst best-friend. A poor cache implementation can mean the difference between experiencing blazing fast performance or unexplained random slowness, or both! It can even result in random stale (out of date) content which you can’t explain.

In this presentation we will demo and compare different caching methodologies, and their perceived real world uses. We will discuss Donut cache, Memory cache, Redis, Varnish, CDNs, and many more. We will dive into demos of real world implementations which can cause unpredictable problems. Some of these are horrible, and some are face-palm.

At the end of this presentation you will be aware of the different trade-offs with each caching methodology, and which might best for your situation.

Euan Finlay

Integration Engineer @Financial Times

X
Euan Finlay
About:

Euan is part of the Operations & Reliability team at the Financial Times, managing incidents across the globe. Before that, he lead a distributed team responsible for Go microservices, Docker containers in Kubernetes, and the backend APIs powering the website.

Talk:

Notes from My Travels: Building Effective Teams When You're in Different Places

More companies are embracing flexible working and distributed teams - whether that’s individuals working remotely, or fully distributed companies with no central hub. This can have great benefits, but the path to success isn’t always smooth.

At the FT, we collaborate daily across time zones, from New York to Manila. How do we help our teams remain effective, avoid “us-and-them”, and feel part of a greater whole? Having fixed production issues while up a mountain, I’ll cover:

* effective communication across locations
* what we learned from other companies
* advice on leading distributed teams

Tosho Trajanov

CTO @ExploreAdeva

X
Tosho Trajanov
About:

A tech consultant with extensive experience in working with startups and enterprises. Over the last few years, Tosho consulted many companies to improve their engineering practices and level up their technology.

Rositsa Kotseva

Full Stack Python Developer @HedgeServ

X
Rositsa Kotseva
About:

Rositsa is a solid Mid-level Python Developer. She joined HedgeServ in April 2017. Her main responsibility is in the creation and maintenance of applications used by both internal and external clients. This includes partnering with other developers, testers, application support engineers, and infrastructure automation engineers to ensure a smooth development and operational pipeline. Rositsa takes part of the interview process in HedgeServ and is a skilled engineer that knows how to execute and innovate in a modern and dynamic environment. She is also a Python lecturer in Hack Bulgaria Academy. 

Talk:

Performance Profiling Techniques to Make Your Code Awesome


In our lecture we will cover the following material:

- Availability Heuristic and Risk Perception

- Performance optimizations – What kind of performance optimizations exist? How/When to apply them?

- Program Profiling techniques and tools, such as RunSnake and SnakeViz.

- Actual Code example – show the program bottlenecks, create a profiling file and explain how to increase the performance.

Robert Avram

Software Engineer @REWE Digital

X
Robert Avram
About:

Robert is a software engineer currently working at REWE Digital in Cologne and spends a lot of his time writing functional microservices in Clojure and Scala. He concurrently seeks refuge from the imperative in the world of purely functional programming, and from time to time likes to pester unwilling individuals with it.

Matt Landheim

Founder and Principal Architect @Object Systems International

X
Matt Landheim
About:

Matt Landheim is the founder and principal architect of Object Systems International, a software development company founded in 1998 with 115 employees in Salt Lake City, Utah, and Sofia, Bulgaria.  He's lived in Bulgaria, loves Bulgaria, and speaks Bulgarian.  He currently resides in the Salt Lake City, Utah, area with his wife and four kids.

Majid Hajian

Software Developer

X
Majid Hajian
About:

Majid Hajian is a software developer has developed and architected complex web applications since 2007 after he graduated as a software engineer. He loves sharing his knowledge with the community. Majid is the author of “Progressive web app with Angular” book published by Apress and “Progressive Web Apps” video tutorial published by PacktPub and Udemy. He is a/an (co)organizer of a few main meetups and conferences in Nordic countries for web and mobile platform.

Svetlin Penkov

Researcher in Robotics & Artificial Intelligence

X
Svetlin Penkov
About:

Dr. Svetlin Penkov works at the intersection of artificial intelligence and robotics and is interested in enabling robots to learn structured models (computer programs) from raw data. He did his PhD in AI & Robotics at the University of Edinburgh and currently is a Research Scientist & Tech Lead at FiveAI, the biggest autonomous vehicles start up in the UK, where his team works on learning models from data that capture how vehicles and pedestrians behave in dense city traffic. He has been actively involved in the entire process of bringing state of the art research into production code on the vehicle.

Mila Petkova

Psychoanalyst And Online Counselor

X
Mila Petkova
About:

Dr. Mila Petkova is counselor and psychoanalyst. Her mission is to help her clients achieve emotional balance and find their way to become their version 2.0. In 2016, after a decade working in the corporate field she defends her PhD thesis in Madrid and opens her online practice where she helps people from four continents overcome anxiety, burnout, loss, body image issues and existential crises.

Lucas Fernandes da Costa

Software Engineer

X
Lucas Fernandes da Costa
About:
Lucas is a Brazilian software engineer living in London.
He loves JavaScript and OpenSource and is a core team member of Chai.js and Sinon.js, two of the most popular libraries in the JS ecosystem.

Lucas is always trying to find better and more efficient ways to solve problems: his motto is "strive to be lazy".

Talk:

A Thousand Words: How I'm still not using GUIs in 2019

Is an image really worth a thousand words? In software engineering, it isn’t.

In this talk, I will explore the UNIX philosophy and modern development workflows to show you how practical, timeless and elegant plain-text tools are, and teach you how to use them efficiently to leverage productivity.

Ayelet Sachto

Production Engineer @SIMILARWEB

X
Ayelet Sachto
About:

Ayelet is a passionate problem solver with 15 years of experience in different companies from big enterprises to small startups. Focusing on architecture and engineering leadership which provided her with the opportunities to design and implement a variety of architectures with different constraints, tackling problems of scale, reliability and data integrality. Ayelet is also an active member in the tech industry, she is a mentor, lecturer, and leading ״Women in Hi-Tech״ community's content and mentoring program. 

Vassil Lunchev

CEO & co-founder @Homeheed

X
Vassil Lunchev
About:

At Homeheed, Vassil works on a computer vision algorithm to distinguishing between available and fake apartment listings. Previously he worked on:

- Leanplum: anything from big data pipelines to (machine) learning the optimal time to send an email

- SoundCloud: an automatic music genre classification system

Talk:

Image Fingerprinting with Keypoints

Here is the problem - we have 5,000,000 .jpg files, many of which are the same. We have to: - Find all duplicated images - Find them even if they were edited in Photoshop - Find them even if the images are different (from different cameras) but the objects on the photos are the same. What is Image Fingerprinting and how to do Image Fingerprinting with Keypoint Matching? Come at #hackconf this October 11-13 and learn from Vassil Lunchev.

Vranac Srdjan

CEO/Team Lead @Code4Hire

X
Vranac Srdjan
About:

Vranac has been in this industry for a long time. He had good fortune to work with a lot of talented people, and had a chance to see some brilliant code, and some of the worst ever written. He gets paid for writing code that performs exceptionally. He runs Code4Hire, a small outfit dedicated to solving tough problems.

Alexander Georgiev

Senior Software Engineer @Skyscanner

X
Alexander Georgiev
About:

Alexander (a.k.a. espr1t) has been programming for 10000 years now – in the beginning as a participant in programming competitions (he has won a few of those), and now as a professional developer. His work experience includes companies like Facebook and Google and he's currently a senior engineer at Skyscanner. As he likes saying, without IT he's just espr.

Talk:

WTF, Languages!?

Do you know what “(new Date()).getYear()” will return in Javascript? What does the expression “True is False == False” evaluate to in Python? Is 10 * (1 / 10.0) == 1 in C++? Come and see - the results might shock you! These 3 weird tricks helped Alexander become a better programmer. Enlarge your knowledge!

Tim Driscoll

Technology Director @HedgeServ

X
Tim Driscoll
About:

Tim Driscoll  has been programming at HedgeServ for the last 12 years. During his tenure, he has benefited from working with many smart engineers, product owners and leaders.


Now he strives to give back by sharing what he has learned. When he is not coding, Tim enjoys running and a good beer (usually not at the same time).

Alexander Popov

Site Engineering Lead @Uber

X
Alexander Popov
About:

Alex Popov has 20 years of experience in Software Engineering. He has been leading engineering teams in the US, UK and Bulgaria in 3 Unicorns during the last 7 years. At the moment Alex leads the engineering site of Uber in Bulgaria. 

His charters are involved with the generation of financial documents and the data analytics products powering Business Intelligence. The Tax & Compliance products owned by his teams generated the data and rendered more than 8 billion financial documents and the taxes and surcharges data for transactions of more than 10 Billion USD in 2018. His Finance Intelligence teams are powering the revenue prediction and cost analytics products in a pre-IPO environment. Before Uber, Alex spent close to 8 years in the travel industry. 

He led teams in the UK and later co-founded and led the engineering site of Skyscanner in Sofia after a similar role with Kayak in Boston, MA. Alex is actively working with startups, VCs and NGOs in Bulgaria and is a passionate supporter of the maturing startup scene in the country.

Talk:

The Useless Leader is the Best Leader!

Command & Control orgs are a failure - they depend on multiple “single points of failure” called managers. Servant leadership works better - actual experts make the decisions. A leader is an enabler and if she does her job well… becomes redundant. The talk explores why is that great for everyone.

Ivan Vergiliev

Tech Lead @Heap

X
Ivan Vergiliev
About:

Over the last few years, Ivan has been building distributed systems and leading distributed teams at early stage startups. Prior to that, he has researched recommendation algorithms at SoundCloud, interned at Google (twice) and Facebook. He is also a bronze medalist from the International Olympiad in Informatics.

Martin Ivanov

Senior Software Consultant @Accedia

X
Martin Ivanov
About:

Martin is a Senior Software Consultant at Accedia. Although his career took off with some Python projects, he currently finds JavaScript tech quite fascinating and works with a various set of technologies in the Angular/React world.

Talk:

ES9, ES10, and Beyond. ECMAScript Release Roadmap.

What you’re about to learn is how ECMAScript standards are built, who is responsible for that, what are the exact features and what is the way to propose an extension? We will also go through the new features which ECMAScript 2018(ES9) and ECMAScript 2019(ES10) are shipping and what further improvements can be expected in ECMAScript 2020(ES11). We won’t stop at the technical overview but give life to the talk with some practical examples of how the standards differ in real life!

Speaker Surprise

X
Speaker Surprise

Workshops

Maciej Treder

Senior Software Development Engineer @Akamai Technologies

X
Maciej Treder
About:

Senior Software Development Engineer at Akamai Technologies.

Enthusiast of web technologies especially Single Page Apps, Progressive Web Apps, microservices, and Internet of Things. Author of articles about JavaScript, NodeJS, and Angular. Open Source contributor - creator of @ng-toolkit opensource project - set of tools for expanding existing Angular applications.

Workshop:

Workshop 1: Angular Universal - be more SEO/CDN/User-friendly with server-side rendering

Are you ready for production? Are you sure? Is your application prefetchable? Is it readable for search engine robots? Will it fit into CDN? Do you want to make it even faster? Meet the Server-Side Rendering. Learn how to implement it in your application and about best practices.

Workshop 2: E2E testing of the Single Page Applications  

Get an in-depth overview of the end to end (E2E) testing techniques of Single Page Applications. 

In this workshop you will learn how to set up a test environment, remote environment for the Continuous Integration, report your test results in a nice and readable form and much more. 

Learn more about things like Jasmine, Protractor, Selenium, TypeScript, Angular and more...

Vassilena Valchanova

Digital Marketing Strategist, Trainer & Public Speaker

X
Vassilena Valchanova
About:

Vassilena is a marketing consultant, trainer, and speaker. She has more than 10 years of experience in digital communications. Her expertise covers marketing strategy, content marketing, growth, and measurement. She has worked with companies in different industries, mainly in the consumer electronics, e-commerce, and SaaS fields.

In her spare time, she organizes popular science events with Ratio, teaches content marketing and growth at SoftUni, and authors a blog on digital strategy and growth.

Vassilena holds an MA in International Communications from Leeds Beckett University, as well as a number of certifications, including Google Analytics and Google AdWords Individual Qualification, Hubspot Inbound certification, Growth Tribe Academy’s 6-week growth marketing course in Amsterdam.

Workshop:

The 10 productivity commandments 

I’ve tried dozens of productivity techniques - out of sheer necessity. I’m working on 4 major projects at a time, not to count a blog, a series of science events, and a course with 600 students! I’ll share the methods, routines, and tools that worked. No fluff, just actionable takeaways.

Iancho Dimitrov

VP Innovation, Strategic Clients & Business Development @Musala Soft

X
Iancho Dimitrov
About:

Iancho has been in the software industry for 20 years and considers himself to be an IT professional with business affinity, or the other way around. He has gone through many operational roles – software engineer, business analyst, software architect, project and program manager, CTO, Business-IT Consultant. For more than 15 years he has also been dealing with sales, marketing and key account management. In his current role as VP at Musala Soft Iancho covers both business and operational responsibilities - which includes leading the Business Development team that drives sales and new clients acquisition.

Workshop:

Sales Skills for IT People 

Applying for a new job? Trying to convince management your project needs regular refactoring? About to found your own start-up? 

In cases like these sales skills help a lot for achieving success. Learn and experiment with successful sales approaches - mapped to real IT professional’s life scenarios.

Daniel Maher

Developer Relations @Datadog

X
Daniel Maher
About:

Daniel Maher is a Developer Advocate at Datadog, where he enjoys measuring things, and talking about measuring things.

Workshop:

Public Speaking for Technologists 

Interested in speaking at a conference but don’t know where to start? Your talk has been accepted but you’re nervous about being on stage? Don’t worry—I’ll get you sorted. In this workshop, we’ll work through things like idea generation, the CFP process, slide style, stage presence, and more!

Ieva Treija

Certified Facilitator in the LEGO® SERIOUS PLAY® Method

X
Ieva Treija
About:

Ieva has over 10 years’ experience in marketing. For the past two years, she has run her own marketing agency Marketingfans. Ieva has discovered that companies often struggle to find the right creative and strategic solutions. So she started to look for ideas how to help her customers and discovered the LEGO® SERIOUS PLAY® method. This method is useful for fostering innovations, making strategic decisions, building teams and creating products. The LEGO® SERIOUS PLAY® is a unique method as it facilitates engagement as well as hearing, taking the opinion of each and every member of the group into account.

Workshop:

LEGO® SERIOUS PLAY® - different approach to your everyday challenges 

LEGO® SERIOUS PLAY® method is useful for fostering innovations, making strategic decisions, building teams and creating products. It is a unique method as it facilitates engagement as well as hearing, taking the opinion of each and every member of the group into account.

Ilian Iliev

Python/Django/Web developer

X
Ilian Iliev
About:

Programming since 2003, in love with Python since 2009. Big fan of Python for its simplicity to use, power and flexibility. Working as a software engineer at Lifesum, a digital health company based in Stockholm, Sweden. Writes about Django & Python at http://www.ilian.io/. Spends his free time snorkelling, fishing, travelling and with his cute baby girl )

Workshop:

Mocking in Python 

How to isolate one module from another during testing? And how to test functions that depend on date, time or 3rd party services? By mocking we can use “fake” objects to make your tests faster and simpler. We will take a look at the build-in mock module, Freezegun and Mocket.

Alexander Todorov

Senior QA engineer & Project Lead @ Kiwi TCMS

X
Alexander Todorov
About:

Alex is a Senior QA engineer and Python developer with more than 10 years of experience. He is also the project lead of Kiwi TCMS - an open source test case management system, the currentmaintainer of pylint-django and a contributor to pylint. He loves everything open source, cooking and motorcycles.

Workshop:

Learn Python & Selenium the fast way

This workshop will teach the basics of Python: functions, common data types, operations with them; control flow - if conditions, for and while loops; running the tests in Python! Then comes Selenium - locating element, waiting for them to appear, reading text and attributes from the HTML elements! 

Finally, we combine everything into a small program! 

- For each module, there are links and instructions for preparation. It is best to read all of these before the workshop;

- An instructor will explain the theory from the preparation section and focus on writing programs to solidify the knowledge; 

- If you don’t complete the tasks on time for the given module you lose 1 life; 

- When all of your 3 lives are lost it is GAME OVER!

Venera Sokolova

Business Process Outsourcing and Talent Acquisition Consultant

X
Venera Sokolova
About:

Venera Sokolova has been working as a freelance HR/Recruiter and Operations for the past 6+ years in the field of IT. She have helped IT professionals find their remote dream job or figure out the next step in their career development. Being an advocate for remote work and working to gather remote teams worldwide Venera started coaching people how to work Remote/Freelance/Contractor roles. She is going to talk about freelance platforms, how to make an online presence that help you be noticed and a portfolio that works, how to get a remote job and what you need to know about contracts, security while being remote and getting paid on time

Workshop:

Remote IT Work Career Workshop

Being an advocate for remote work and working to gather remote teams worldwide Venera started coaching people how to work Remote/Freelance/Contractor roles.

She is going to talk about freelance platforms, how to make an online presence that helps you be noticed and a portfolio that works, how to get a remote job and what you need to know about contracts, security while being remote and getting paid on time. 

Georgi Atanasov

Director Software Engineering @Progress

X
Georgi Atanasov
About:

Georgi is a technical professional and people manager with over 15 years of experience in multiple software technologies. Ten years ago, he joined Telerik, later acquired by Progress, and he has set up and led multiple products and teams since. His latest endeavor is building a product that unveils the AR/VR value for line of business applications.

Workshop:

Building your first Virtual Reality App 

Virtual reality is steadily transitioning from an enthusiast-only technology to a mainstream ecosystem. Besides gaming and entertainment, multiple business verticals already see huge value in applying VR in their workflow. Building apps for VR is incredible fun but requires new skills and knowledge.

Panayot Cankov

Principal Software Engineer @Progress

X
Panayot Cankov
About:

Panayot has 15 years of experience focused on UI. For 9 years in Progress, he has been working on the XAML stack and the NativeScript framework. Today he is pushing forward AR/VR technologies as he is a big believer in those, along with AI/ML for being the foundation of the next generation line of business application experiences.

Workshop:

Building your first Virtual Reality App 

Virtual reality is steadily transitioning from an enthusiast-only technology to a mainstream ecosystem. Besides gaming and entertainment, multiple business verticals already see huge value in applying VR in their workflow. Building apps for VR is incredible fun but requires new skills and knowledge.

Deyan Yosifov

Senior Software Engineer @Progress

X
Deyan Yosifov
About:

Deyan is an Architect, Senior Software Developer and Mathematics enthusiast. He joined Telerik 6 years ago and for that time he participated in the development of several different projects - Document Processing Libraries, RadPdfViewer and RadSpreadProcessing WPF controls and most recently in Telerik's AR/VR. He is passionate on 3D technologies and loves solving challenging problems.

Workshop:

Building your first Virtual Reality App 

Virtual reality is steadily transitioning from an enthusiast-only technology to a mainstream ecosystem. Besides gaming and entertainment, multiple business verticals already see huge value in applying VR in their workflow. Building apps for VR is incredible fun but requires new skills and knowledge.

Hristo Zaprianov

Senior Software Engineer @Progress

X
Hristo Zaprianov
About:

Hristo is an avid last-gen technology enthusiast and VR/AR developer. He’s been creating 3D-graphics applications for over a decade now, with experience in scientific research in the field of image processing, game development, ship simulators and all kinds of VR & AR projects. He’s done stuff for Oculus Rift/Go/Quest, HTC Vive, Microsoft Hololens and also mobile apps for iOS & Android, utilizing ARKit, ARCore and Vuforia.

Workshop:

Building your first Virtual Reality App 

Virtual reality is steadily transitioning from an enthusiast-only technology to a mainstream ecosystem. Besides gaming and entertainment, multiple business verticals already see huge value in applying VR in their workflow. Building apps for VR is incredible fun but requires new skills and knowledge.

Ivaylo Ivanov

Software Developer @Auxcode & Part of the core team of KiwiTCMS

X
Ivaylo Ivanov
About:

Ivo is a software developer at Auxcode, part of the core team of KiwiTCMS - the open source test case management system, and a participant and contributor to the Vratsa Software Community. He is still in school and loves drawing, the Lord of the Rings and black metal.

Workshop:

Git from Scratch 

Thank you for your interest in Git! Git is awesome. Come and understand why. Git is widely used for distributed collaboration among programmers to track their changes and to share between them. Come and understand how.

Svetlin Penkov

Researcher in Robotics & Artificial Intelligence

X
Svetlin Penkov
About:

Dr. Svetlin Penkov works at the intersection of artificial intelligence and robotics. He is interested learning programs from large amounts of data, which was the topic of his PhD at the University of Edinburgh. For the past 2 years, he has also been working as a Research Scientist & Tech Lead at FiveAI, the biggest autonomous vehicles start up in the UK, where his team works on learning models from data that capture how vehicles and pedestrians behave in dense city traffic. He has been actively involved in the entire process of bringing state of the art research into production code on the vehicle.

Workshop:

Playing ATARI Games with Deep Reinforcement Learning 

Deep Reinforcement Learning (DRL) is one of the most recent and promising fields in AI. 

In this workshop, we will implement a DRL agent that learns to play ATARI games. We will introduce key concepts from DRL as well as some Python packages such as Chainer and OpenAI Gym.

Kadi Kraman

Senior Software Engineer @Formidable London

X
Kadi Kraman
About:

Kadi is a Senior Software Engineer at Formidable London, working primarily with React, React Native, Node.js and GraphQL. She is an active member and contributor in the JavaScript Open Source community, and enjoys keeping up to date with the cutting edge tech in the JavaScript space.

Workshop:

React Native Workshop

React Native is a framework for building native applications using React. You will see how React Native differs from React on the web, get an overview of fundamental building blocks of a React Native app, and use this new-found knowledge to build your very first app!

Martin Chaov

Software Architect @SBTech

X
Martin Chaov
About:
Who are you? - Martin Chaov
Why do you want people to know about you? - I don’t want people to know about me. I want people to do good software. 
Who’s your favorite member of One Direction? - Is this something solved with Dijkstra shortest path algorithm?

I don’t take myself too seriously. I am a tech enthusiast. Most of my sentient life I have tinkered with tech. In IT I’ve done almost every job imaginable. I was doing cables, PC assemblies, IT support, domain controllers, networks, ISP, graphic design, software development… And I am equally bad at everything, meaning I have a lot of hands-on experience to share :)

Workshop:

Crash course in JS Event loop

Event loop demystified with practical examples. If you ever tried understanding JS’ concurrency model and failed, now is the time to get things cleared out!

Bogomil Tsekov

Senior Software Engineer @Experian

X
Bogomil Tsekov
About:

Bogomil is a software engineer that is passionate about using Python for all kinds of programs – mainly due to clean syntax, portability, flexibility and ease to monkey-patching. Some of his projects include web site scraping, data processing and OS monitoring tools. He also believes that Python is THE programming language of the future and everybody should be familiar with it.

Workshop:

Python speedup using code optimizations

The workshop is organized by Experian Bulgaria

This workshop will focus on the steps needed to optimize existing code, so that performance can be increased. It will provide some internal details of how Python works, so that simple rewriting of the code can influence on the speed/memory parameters during runtime;

It will give a way to measure the performance of programs so that different changes can be compared;

It will remind that using effective mathematical algorithms is important ingredient for the recipe for optimizing a program. These techniques can be applied to identify bottlenecks in the execution of the program.

Svetlozar Dimitrov

Software Developer @SumUp

X
Svetlozar Dimitrov
About:

Svetlozar is a software engineer with over 15 years of experience in different technologies and languages. He's also got extensive experience teaching as a lector in a leading tech training company. Svetlozar believes that system architecture is steadily becoming even more important than software architecture and is working hard on making developers aware of this paradigm shift. Currently he's the Platform Lead at SumUp and he's driving the company's next payment platform evolution.

Workshop:

Writing effective unit tests in Java

Timo Hentschel

Solution Architect & Service Delivery Manager @it-economics Bulgaria

X
Timo Hentschel
About:

 Timo is an experienced Solution Architect and Service Delivery Manager at it-economics Bulgaria. He is interested in a variation of topics such as SCRUM, Java, Agile Development, Business Process Management, Gamification and many more. He enjoys attending meetups on topics such as All things agile, Management 3.0, Innovative Organizations, Failure Stories, Behavioral Design and Creative Storytelling. At the same time, Timo likes photography and he is a big Netflix fan.

Workshop:

Building a high-performance, distributed and scalable microservice orchestration

The workshop is organized by it-economics Bulgaria

We will analyze the performance of a provided system, then separate pieces of code into microservices. 

We will then introduce a flexible technology for microservice orchestration, configure it and hook the microservices in. Finally, we will again analyze the performance.

This workshop is for advanced developers and we will require some software to be downloaded and installed before the workshop, there will be no time to do this during the workshop.

Kamen Kotsev

Software Developer @HackSoft

X
Kamen Kotsev
About:

Kamen Kotsev is a software developer at HackSoft. He's been working with Django, Python, React and Scala trough the last couple of years. He's keen on functional programming, good visual design and he has an eye for CSS.

Workshop:

Behind the scenes of React Redux

We will implement Redux and make it work with React from the ground up. We will also implement some redux forms and tools after that. We will implement a shared state. 

We will create the basic functionality of redux forms and try to understand some of the decisions behind the implementation. We will also implement a different tool for working with forms that will be very similar to the existing lib called "Formik".

Mihail Velikov

DevOps Tech Lead @SBTech

X
Mihail Velikov
About:

Mihail Velikov started working at SBTech in 2018 as a DevOps Tech Lead and he has already become a Team Leader of our DevOps team.

He is an integral part of the developing of a complex multi-tier product, involving client and server-side software, web application and web services using Docker, Kubernetes, Helm Jenkins, etc.

Currently he is working on containers orchestration with Kubernetes.

Workshop:

Declarative deployment and monitoring Kubernetes

Workshop Part 1:


Declarative deployment to Kubernetes with Weave Flux
1. A short introduction to Docker and Kubernetes
2. Explaining how Weave Flux works practically
1. Setting up a local development environment for all participants - access to the cluster + GitHub repository
2. Have each participant installing flux
3. Deploy example applications with flux
4. Deleting applications 


Workshop Part 2:


Monitoring Kubernetes with Prometheus and Kubernetes Dashboard
1. Explaining Prometheus/Kubernetes Dashboard
2. Introducing helm charts
3. Install Prometheus + Kubernetes dashboard
4. Showing metrics and Grafana dashboards
5. Showing Kubernetes dashboards, how to see logs and so on

Rayna Stankova

Director @Women Who Code Sofia

X
Rayna Stankova
About:

Reny is a director for Women Who Code Sofia, senior QA engineer at VMware and mentor at CoderDojo Bulgaria. She loves interacting with people and has an impressive collection of colorful scarves!

Workshop:

Git from Scratch

Thank you for your interest in Git! Git is awesome. Come and understand why. Git is widely used for distributed collaboration among programmers to track their changes and to share between them. Come and understand how.

Evgeni Kunev

Sr. Software Engineer @Uber

X
Evgeni Kunev
About:

Evgeni has a passion for understanding complex systems and problems in order to simplifying them. A firm believer that pushing yourself to teach others about something is the best possible way to truly understand it in all its depth. He has been part of the awesome teams behind several elective courses at FMI on Python, Perl and JavaScript, as well as the first NodeJS course in Hack Bulgaria. Navigating the curious world of taxes and microservice oriented architectures as part of Uber's engineering team in Sofia for the past 4 years.

Workshop:

Golang 101

WHAT IS IT ABOUT? 

There are so many programming languages out there, and new ones are popping up almost every day. Which one to choose? Where to start? To stay ahead of the game by broadening your skillset, learning a new language is important for your professional growth. Some of the developers claim that Golang is a neat combination of the best features of the most popular languages. 

You will have the chance to find this out yourself at this workshop. Join us at the Golang 101 workshop. We’ll get familiar with Go - a modern language that makes it easy to build simple, reliable, and efficient software. We’ll build a real-world application and learn the basics of programming in Go. 

Golang is also known as Google Go, which is the programming language created by (as you may have already guessed) Google. Golang was initially developed at Google in the year 2007. 

YOU’LL NEED TO HAVE: A laptop and a charger Go installed (follow https://golang.org/doc/install). If you’re having issues, it’s ok, you can come before the workshop and we’ll help you. 

WHAT WILL I LEARN DURING THE WORKSHOP? 

You will be introduced to Golang and will learn the basics of this programming language together with experienced professionals from the Uber Engineering Sofia team. Moreover, you will meet like-minded people from the tech field. 

WHO IS IT FOR? 

The workshop is for people who are passionate about coding and have some programming experience but are new to Golang. 

Kristiyan Georgiev

Developer @VMware Bulgaria

X
Kristiyan Georgiev
About:

Kris works in the Cloud Management team at VMware Bulgaria and is part of the engineering team responsible for the implementation of core provisioning of cloud agnostic virtual machines in Cloud Assembly. He is passionate in every aspect of the SaaS development, including Java service development, Pipelines and infrastructure.

Workshop:
Microservice lifecycle - from code to production

The workshop is organized by VMware Bulgaria

In this workshop, you will learn how to develop simple SaaS micro service Java application with Angular frontend, how to test it and deliver it to your clients using continuous integration and continuous delivery. Using Kubernetes, we will scale and manage our SaaS application.

Simona Mitrenova

Developer @VMware Bulgaria

X
Simona Mitrenova
About:

Sim has intense interest in UI development stack, besides that she is passionate about application delivery and infrastructure. As part of CMBU VMware Bulgaria she is currently working on delivering cutting edge on-premise management solutions.

Workshop:
Microservice lifecycle - from code to production

The workshop is organized by VMware Bulgaria

In this workshop, you will learn how to develop simple SaaS micro service Java application with Angular frontend, how to test it and deliver it to your clients using continuous integration and continuous delivery. Using Kubernetes, we will scale and manage our SaaS application.

Anton Sankov

Software Engineer @Docker Inc. & a core contributor to Kiwi TCMS

X
Anton Sankov
About:

Anton is a Software Engineer at Docker Inc. and a core contributor to Kiwi TCMS - the leading open-source test case management system. He loves to learn new things and share his experience with others.

Workshop:

Learn Python & Selenium the fast way

This workshop will teach the basics of Python: functions, common data types, operations with them; control flow - if conditions, for and while loops; running the tests in Python! Then comes Selenium - locating element, waiting for them to appear, reading text and attributes from the HTML elements! 

Finally, we combine everything into a small program! 

- For each module, there are links and instructions for preparation. It is best to read all of these before the workshop;

- An instructor will explain the theory from the preparation section and focus on writing programs to solidify the knowledge; 

- If you don’t complete the tasks on time for the given module you lose 1 life; 

- When all of your 3 lives are lost it is GAME OVER!

Daniel Rankov

DevOps & Cloud Manager @MentorMate

X
Daniel Rankov
About:

 Daniel Rankov has been doing cloud environments architecture and implementation based on Amazon Web Services (AWS) for the past 3 years.

He has certification in all the Associate levels, AWS Certified Solutions Architect – Professional, AWS Certified DevOps Engineer – Professional, AWS Certified Security – Specialty and AWS Certified Advanced Networking – Specialty.

Daniel is very passionate about public cloud and AWS as well as DevOps culture and practices.

He is also a co-organiser of AWS User Group Bulgaria and Sofia HashiCorp User Group.

Workshop:

Build a Serverless Web Application with AWS


The workshop is most appropriate for Beginner level of cloud and AWS experience. We are going to do an overview of the AWS services in use.


You'll create a simple serverless web application that enables users to request unicorn rides. The application will present users with an HTML based user interface for indicating the location where they would like to be picked up and will interface on the backend with a RESTful web service to submit the request and dispatch a nearby unicorn. The application will also provide facilities for users to register with the service and log in before requesting rides.

HackConf 2018

The fourth edition of HackConf took place on 15th-16th of September at Sofia Tech Park. For the first time, the conference was held entirely in English! Attendees from 17 nationalities participated in the event. 

All materials from HackConf 2018 can be found here and all videos from the talks on our YouTube channel. 2018.hackconf.bg

HackConf 2017

HackConf 2017 was the third edition of the conference. The event was entitled “ How to write better software”. More than 1200 people were part of the HackConf 2017 where 16 top lecturers presented their talks. 

All presentations and video materials can be found on HackConf 2017's YouTube playlist. 2017.hackconf.bg

HackConf 2016

HackConf 2016 was the second edition of the IT conference. The event was held under the motto: “How to become better programmers and IT specialists?” 

During the 2-days event, we saw and heard 16 talks by 17 speakers. Some of the awesome topics were: "How to learn to program for 10+ years", "The code is a minefield", "The good programmer: а matter of perspective", "Security in today’s world". You can watch all presentations on: HackConf 2016's YouTube playlist. 2016.hackconf.bg

HackConf 2015

HackConf2015 was the first HackBulgaria’s IT educational and motivational conference. The main purpose of the conference was to motivate and give attendees appropriate direction for their development in the sector. 

During the 2-days event we saw and heard 18 talks by 19 speakers on topics like: "Indie Game Development", "How to successfully accelerate our idea", "The books every programmer has to read". You can watch all the presentations on HackConf 2015's YouTube channel.

Tickets

The tickets are on sale! Your ticket gets you:

✔️ 2 days with 2 tracks of high-class software development talks in English

✔️ 1 day with hands-on workshops and amazing instructors

✔️ Barista-style coffee

✔️ Lunch on both conference days

✔️ Awesome T-shirt + HackConf 2019 canvas bag of goodies


For ticket sale, we use the ticketing platform Weemss. All personal data the platform may collect from you to complete your order is stored and managed in compliance with GDPR. Weemss Privacy Policy.

Location

  • Sofia, National Palace of Culture
  • team@hackconf.bg
  • 08:00-18:30