Program

Abhishek worked for HackerRank for 2 years where Code Completion Infrastructure was built. He is currently working at Automattic in Data team on scaling Infrastructure of Automattic and WordPress.

Talk: Load Testing for Modern Applications

Carrot is Go based Distributed Load/Stress testing frameworks for Modern Web Application which was created to test HackerRank Code Completion Infra I wrote to test more than 200 million requests a month. Test your Web App with support of WebSockets/XHR, Multiple payload/protocols, Fancy Graphs.

Aditya Mukerjee

Aditya is a systems engineer at Stripe on the Observability team, based in New York City. He studied statistics at Columbia and computer science at Cornell, and has been writing Go professionally for the past four years. When not defending users against online fraudsters, he spends his free time playing German-style board games and listening to embarrassing music.

Talk: করো: Translating Go to Other (Human) Languages, and Back Again

Like most programming languages, Go uses English keywords. But Go’s unique approach to byte and string handling makes it the ideal candidate for a universal programming language that can be localized to allow English-speaking and non-English speaking developers to collaborate on the same projects.

Cassandra Salisbury

Cassandra Salisbury currently works on the open source strategy team at Google as a program manager on the Go team. She is a core team member of GoBridge where she focuses on increasing diversity and mindfulness in the Go community. She is an organizer for the GoSF meetup, and a local conference, Gopherfest. She is an avid karaoke fan, finds relief in stress cooking and lives in the San Francisco Bay Area.

Talk - Closing Keynote: The State of Go

Dave Appleton

Dave Appleton has been messing around with things since sometime before the dawn of time. Mentored by people with more technical expertise than interpersonal skills and business sense, Dave started programming in 1968 in FORTRAN, building audio systems about the same time and messing with digital logic in 1976. In the intervening time he has built world beating test systems, co-designed award winning products, run his own instrumentation company for over fifteen years, learned and actually used more than two dozen programming languages at a professional level, and taught courses from hobby to degree level on subjects as diverse as IOT, e-commerce and Image Processing. For the last three years he has been working on crypto currencies and financial technology.

Talk: Ethereum ? Why GO there ?

Deepesh Naini

Deepesh is lead product engineer at Go-Jek. He is a full stack developer with hands on experience on Android, Ios, React, Angular, OOJS, Node.js, Golang. His passion is to build cool products which can help scale a business and bring value to customers.

Talk: Golang - Metric tracking and Nuances of Memory Management

Golang, we all know that it is a super fast, super developer friendly language. But with all this speed around Golang it’s very common for developers to suffer from pitfalls. I am gonna talk about how we can avoid those.

Mahadevan Ramchandran

Mahadevan Ramachandran is the technical co-founder and CEO of RapidLoop. In his career spanning more than 18 years, he has co-founded RapidLoop, a startup that creates cloud native solutions for server monitoring, database monitoring, service monitoring and app metric monitoring. He also served as game CTO for top Zynga titles (including Draw Something, Hidden Chronicles, ChefVille) reaching millions of players and led the engineering team that built and launched the first Zynga title from India (Hidden Shadows). Previously Mahadevan led development teams creating products for global businesses at Siemens, Philips, Emulex and EMC. He released his first FOSS in the early ‘90s - to India’s first BBS (CiX) and continues to be an active open source contributor.

Talk: Writing Job Queues in Go

Processing asynchronous jobs with Go start off simple and quickly mushroom into intricate pieces as requirements get added on (workers, cancels, retries, ..). Based on our popular blog post “Job Queues in Go”, this talk will walk you through all the pieces you need to build your job queue.

Matt Ellis

Matt Ellis has been involved in the tech industry from a very early and has held a number of roles. Early in Matt’s career he spent the majority of his time on developing 3D rendering engines in both OpenGL and Direct3D. He also authored a number of technical manuals and books on the topic. During an independent consulting opportunity in Brazil, Matt authored two additional books with a focus on RESTful services and APIs. More recently, Matt works as a Sr. Product Manager & Head of Open Source Software at TIBCO Software, Inc where he focuses on product & strategy around Open Source and more specifically, Project Flogo, an open source edge microservices framework built entirely in Go.

Talk: A Modern Edge Microservices Framework Built Entirely in Go

Explore the challenges and benefits to building a microservices framework from the ground up entirely in Golang, from contribution models to dependency management, discover how we’ve successfully leveraged Go to build the lightest microservices framework designed for IoT and serverless compute.

Niranjan Paranjape

Niranjan is CTO at Go-Jek, Indonesian unicorn. He has 12 years of experience as a programmer, consultant and entrepreneur. As CTO, he is responsible for building a high performance engineering culture focused on passion for new technologies, code quality and product thinking. He started his career at Infosys, before moving to ThoughtWorks where he consulted for Fortune 500 clients. He then went on to co-found C42 Engineering, a boutique software engineering consulting firm, with Aakash and Sidu. In October 2015 C42 was acquired by Go-Jek to expand it’s engineering arm to Bangalore.

Talk: Organisation - A Distributed Computing Network

There are many similarities between a distributed computing network and technical organisation. This talks draws parallels between these two worlds to put org design in a new perspective.

Nitish Sakhawalkar

Born in Pune, Nitish is an engineer at Slack Technologies on the Native Clients Infrastructure Team in San Francisco, USA. He is a huge fan of typed, compiled languages and at Slack he works on cross-platform client applications in C++. Although relatively new to Go, his unique cross-platform experience has got him deeply involved in and experimenting with CGO. When not solving cross-platform application challenges, he spends time listening to Classical Indian music and practicing Reiki healing.

Talk: CGO: From head to toe

Writing code that passes data or calls functions across language boundaries is tricky and needs a lot of discipline. This talk focuses on some of the good practices for go developers who are new to the cgo world, through simple snippets and will also dive a little deeper into the actual workings.

Piyush Verma

Piyush is a software consultant solving infrastructure and data engineering problems for over a decade. He likes almost all programming languages alike. He is a self-trained ultra-runner and connoisseur of silly jokes which he transmits over UDP.

Talk: namespaces.go

Cgroups and Namespace are the shoes and shorts of the container race, not in any particular order. They have been around for a while but not too many see the usage and power they have. The talk is a consortium of Golang cookbooks to help you understand how to reach a container using these constructs.

Rajeev Bharshetty

Rajeev is working as a Product Engineer at GO-JEK. At GO-JEK, he is working on building Resilient Distributed systems at Scale. His primary focus and interest areas are Distributed Systems, Security and Data. He is a theoretical computer science nerd, interested in reading academic papers. He has open sourced some projects at github.com/rshetty. He is also Long distance Runner, Amateur Musician and an Avid Photographer.

Talk: Resiliency in Distributed Systems

Keeping distributed systems up and running is a hard problem to solve at scale. Adopting some basic patterns can help us guard our systems from sudden spikes in traffic, dependency failures, network issues, slower downstream services and can help us achieve considerable uptime on our systems.

Rushabh Dadbhawala

Rushabh is solving problems using software since 15 years. He is well grounded in Object Orientation, Design Patterns and Software Architecture. He is both domain and technology agnostic; “tightly coupled” only to source code! At Continuum, Rushabh works with multiple teams to build the new product platform. Rushabh prefers to roll up the sleeves and get hands dirty with code. He is not what one would call a "white board architect".

Talk: DUTDIP - Don't Use This Dependency Injection Pattern

A thought experiment in designing a DI system for GoLang, bringing out subtle nuances of the language, especially when compared to traditional object oriented languages. Brings out possibilities and challenges of the language, and enlightens you on things you shouldn’t do!

Sanket Sudake

Sanket works as Software Engineer at Infracloud Technologies. He has been using golang to develop different solutions around Kubernetes, Docker, IOT etc. He is also an active contributor to Openstack. His core interest areas are distributed systems and networking technologies. Prior to this he worked at Veritas as Linux Kernel Engineer.

Talk: Playing with robots in Golang

With advent of ARM devices, IOT toys and platforms I started tinkering with Golang to build on devices. This talk will explore possibilities of hardware with golang and demo voice command talking to raspberry pi which operates the Sphero ball.

Sean Kelly

Sean Kelly (affectionately known as Stabby) is a Lead Software Engineer and Engineering Manager for Rapid7. A simple man with a dog for an avatar, he enjoys learning new things, helping / mentoring others, and posting photos of his dog on the internet. When he's not giving talks, he enjoys spending time at home with his wife, taking his dog to the park, and coming up with new projects to work on that he will never actually finish.

Talk: Embedding, or how I learned to stop complaining and use the strengths of the language

Embedding. It sure is weird, isn’t it? It’s unlike traditional inheritance, and it can be uncomfortable at first. But it does have a lot of positives to it that might not be obvious at first. In this talk, we’ll go over highlights and pitfalls of embedding, and some interesting ways to use it.

Vishal Biyani

Vishal is Founder and CTO at Infracloud technologies. Vishal brings his experience as an engineer who has worked across the whole lifecycle of software development together to bring holistic view of systems and obsessive focus on reducing waste while delivering value. Vishal has worked with Fortune 500 enterprises as well as medium scale startups to bring best of technology & processes together. Vishal is currently focusing on serverless space by contributing to Fission serverless framework. When not at keyboard, Vishal can be found on flipping pages or behind bicycle pedals.

Talk: Using Kubernetes API effectively with Golang

Extend Kubernetes to write custom abstractions effectively in Go language, starting with basic CRUD operations and then leading into advanced features like informers, listers watchers etc. to build robust and scalable apps.

William Kennedy

William Kennedy is a managing partner at Ardan Studio in Miami, Florida, a mobile, web, and systems development company. 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. He spoke at GopherConIndia 2015 and 2017.

Talk: What is the Legacy You are Leaving Behind?

There are two kinds of software projects: those that fail, and those that turn into legacy horrors." - Peter Weinberger (inventor of AWK).

In this talk, I will ask you to think about the philosophies you carry with you as a software developer and ask a lot of questions. What's important to you as a developer? What does engineering mean to you? How do you ensure your maintaining strong mental modes? All these questions and more will be presented and discussed.