Denis Gladkikh

outcoldman

My personal blog about software development

> Principal Software Developer @ Splunk

On this web site I publish my personal thoughts and ideas. I am not speaking for any company in my blog posts.

From 2005 participated in various projects, including solutions for analytic, enterprise applications, CAD-software, tools for developers, mobile applications and big-data solutions. Contributed in several open source projects. Have experience in building distributed systems, back-end, front-end and mobile applications. Know how to build scalable systems and design any kind of applications from the ground. I have system programming experience in Windows, Linux, OS X and Solaris. I am a geek, like to build software, like to learn, like to solve hard and interesting problems. Share my experience on meetups, blogs posts and conference talks. I am experienced individual contributor with strong Technical Lead skills.

Contacts

I’m happy to answer on your questions and discuss interesting topics

Work Experience

10/2013 - Present. Splunk, Inc. Principal SDE.

c, c++, python, golang, javascript, docker, mongodb

  • Member of Splunk Core team.
  • Integrated one of the commonly used NoSQL database in Search Head layer and built Key Value Store. On top of this solution we have built support for Key Value Store based lookups in distributed searches, including data replication from the Search Head to the Indexers tier. As part of this project contributed to the Mongo-C-Driver, helped to find and diagnose MongoDB issues and bugs. With Splunk patented “Distributed tasks for retrieving supplemental job information”.
  • As a side project drove initiative of Splunk integration with Docker. Built Splunk Logging - Driver for Docker. Built highly popular unofficial Splunk image, which later was adopted by - the company and published as official Splunk image. Researched possibility of running Splunk - as state-full cluster in Docker environment, including Docker Swarm Mode. Helped company to - adopt Docker for internal needs.
  • Worked on several projects for the Splunk Cloud, including Monitoring, Service Discovery, - Manageability. Built scalable Workflow based manageability console.
  • Improved various parts of the Splunk Core, including performance of several components, - helped other teams with P0 and P1 bugs, broken builds (as I am one of the earliest person in - the office) and compatibility with some of the newest operation system versions.
  • Researched various projects in hackathons.
  • Initially was hired in the application extensibility team with responsibility of building - SDKs, Web Frameworks and tools for developers.
  • Presented on conference .conf2016 and local meetups with the topics about Splunk and Docker.
  • Drove several projects as Technical Lead, acted as Hiring Manager and Manager Lead in time of absence of our Lead.

You can follow my blog posts on blogs.splunk.com and also see my commits on GitHub/Splunk.

06/2011 - 10/2013. Microsoft. Senior SDE.

c#, c++, javascript.

  • Visual Studio Diagnostics Team.
  • Designed and built Performance and Diagnostics Hub. Extensible core for writing diagnostic tools in Visual Studio and Internet Explorer. It was very complex system with various points of extensibility, including remote native collector, Workflow based extension for Visual Studio, out of process Data Warehouse and out of process HTML/JavaScript rendering. Our team have built a transparent layer between all of these systems, providing simple and efficient way to communicate between all of the parts of the system. Several tools were written in the first year of existence of Diagnostic Hub by several teams worked closely with us.
  • Supporting legacy Profiling Tools in Visual Studio 2010 and 2012, including binary instrumentation, ETW based sampling and legacy driver based sampling.
  • Supporting Code Analysis tools for Visual Studio (FxCop), including adding support for newest platforms.
  • Researched few projects on hackathons, including IntelliCommand (published as open source VS extension) and Diagnostics Live Hub, which was a vision for the future project Live Debugging in future version of Visual Studio.
  • In total worked in 3 offices: started remotely from Russia, moved to Vancouver, BC and ended up in headquarters in Redmond, WA.

03/2010 - 06/2011. Mobile Systems International Ltd. Senior SDE.

asp.net, c#, ms-sql, silverlight

  • UK-based company. Worked remotely from Yaroslavl, Russia. We had international team, worked remotely from various time zones.
  • Developed analytic application for Mobile Networks. Main features included monitoring networks, reporting outages and failures based on daily KPIs, plotting data on the map, building daily reports. Every day our application processed billions of KPIs from hundreds cellular towers.

12/2007 - 02/2010. FogSoft LLC. SDE.

asp.net, c#, ms-sql, wpf, winforms, javascript, sharepoint, wcf

  • Worked in Yaroslavl, Russia.
  • Building Enterprise Applications, including Trading Platforms, Customer relationship management application and automation for Advertise Agencies. Worked in close relationship with the customers to define business problems and provide solutions.
  • Worked on designing and extending Web Framework for building Enterprise applications, which was used for most of the applications built by the company.
  • Integrated Russian certified cryptographic solution for signing bids on client side directly in the browser.

09/2008 - 06/2011. Yaroslavl State University. Teaching Assistant.

  • CS courses and practicums. Lectured in groups of 20 students basics of Design Patterns.

01/2005 - 11/2007. IT-Co. SDE.

c++, mfc, asp.net, c#, ms-sql

  • Developed CAD-software, including desktop application built by the company and Add-ins for SolidWorks.
  • Developed ASP.NET enterprise applications for electronic document management.
  • Joined the company on early stage, helped with hiring, educating and management.

Personal projects

I have a several pet projects, some of them useful, some of them not, you can find some of my work on GitHub and CodePlex. There are just few projects, which I believe gained the most popularity

2013-2015. outcoldplayer

c#, windows8, winrt, sqlite

Unofficial Google Music player for Windows 8. Application has been listed on the first place of top paid applications for several days. Version 3.0 got very high ratings. More than 1000 everyday users. Closed it for several reasons, one of them was the problems with supporting not documented API.

2013-2014. Dewey

javascript, chrome apps, angularjs

Open source Google Chrome application for managing bookmarks. I’ve built first version of Dewey application (former Chrome Bookmarks) on one of the hackathons in Seattle (second place). After that Jamie Wilson offered me a help for building next version, which we renamed into Dewey. Application has more than 1500 everyday users. I always considered it just as fun project so never tried to spend a lot of time on it.

You can download Dewey from http://deweyapp.io/ and take a look on source code under GitHub/Dewey.

Education

  • 2007 - 2011. Yaroslavl State University. Postgraduate Student. Applied Mathematics and Computer Science, Department of differential equations. Research on “greedy” algorithms in Marzenkewitz and Lorentz spaces.
  • 2002 - 2007. Yaroslavl State University. Master degree. Applied Mathematics and Computer Science, Department of differential equations.
  • 2009 - 2010. Microsoft Certified Specialist in ASP.NET, WPF, WCF, Data Access, Windows Applications, Silverlight

Honors & Awards & Memberships

  • 2009 – 2011. Microsoft Most Valuable Professional, Client App Dev.
  • 2009 - 2010. Microsoft Student Partner. MSP Guru.
  • 2008 - 2011. Ineta User Groups - .NET Associations. Group Leader of Yaroslavl Student .NET Association and Speaker of Yaroslavl .NET Association.
  • 2007 - 2011. GotDotNet Team. Forum moderator and articles author.