About the conference

DotNext 2018 Moscow is a conference for .NET developers that took place on November 22-23, 2018, in Moscow.

The conference talks are devoted to:

  • the present and the future of .NET platform;
  • performance optimization;
  • .NET platform inner workings;
  • architecture and design patterns;
  • .NET challenging problems and best practices.

DotNext is about:

  • three dozens of talks held by the world's leading experts such as Jon Skeet, Jeffrey Richter, Sasha Goldshtein, Andrei Alexandrescu, Andrey Akinshin.
  • 2 days of talks in three rooms and over 600 developers from companies like Google, Microsoft, and JetBrains exchanging their experience and achievements at BoFs, discussion zones and the party.
  • the high-quality 1440p online-broadcast allows those who can't reach Moscow in person to take part in the conference.

Speakers

Jeffrey Richter
Jeffrey Richter
Microsoft
Jeffrey Richter is an Azure Software Architect and author of several best-selling Windows and .NET programming books as well as...

Jeffrey Richter is an Azure Software Architect and author of several best-selling Windows and .NET programming books as well as many MSDN magazine feature articles and columns. He is also a co-founder of Wintellect, a software consulting and training company where he has authored many videos available on WintellectNOW.

Pavel Yosifovich
Pavel Yosifovich
Pavel is a developer, trainer, author and speaker, specializing in Microsoft technologies. He's the co-author of "Windows Internals, 7th edition,...

Pavel is a developer, trainer, author and speaker, specializing in Microsoft technologies. He's the co-author of "Windows Internals, 7th edition, Part 1" (2017) and "WPF 4.5 Cookbook" (2012). He's also a Pluralsight author.

He can be reached at zodiacon@live.com or through his blog.

Christophe Nasarre
Christophe Nasarre
Criteo
In addition to developing and shipping software on Microsoft stacks for 25+ years, Christophe Nasarre has been working as a...

In addition to developing and shipping software on Microsoft stacks for 25+ years, Christophe Nasarre has been working as a technical reviewer for MSPress, Addison-Wesley and other publishing companies since 1996 on books such as "CLR via C#" and the last editions of Windows Internals.

He is providing tools and insights on .NET and Windows development via his blog. Christophe also presented technical sessions on stage both internally at Microsoft or for ISVs and customers at public events.

Dylan Beattie
Dylan Beattie
Dylan Beattie
Skills Matter
Dylan Beattie is a systems architect and software developer, who has built everything from tiny standalone websites to large-scale distributed...

Dylan Beattie is a systems architect and software developer, who has built everything from tiny standalone websites to large-scale distributed systems. He's currently the CTO at Skills Matter in London, where he juggles his time between working on their software platform, supporting their conference and community teams, and speaking at various conferences and events they organise in London. From 2003 to 2018, he worked as webmaster, then IT Manager, and then systems architect at Spotlight (www.spotlight.com), where his first-hand experience of watching an organisation and their codebase evolve over more than a decade provided him with a unique insight into how everything from web standards and API design to Conway's Law and recruitment ends up influencing a company’s code and culture.

Dylan is actively involved in the international software development community. As well as his work with Skills Matter, he runs the London .NET User Group, he's on the programme committee for NDC Conferences, and he's a frequent speaker at conferences and technical events around the world.

Dylan grew up in southern Africa, moving to the UK with his family when he was ten. He's a Microsoft MVP and holds a degree in Computer Science from the University of Southampton. He's a guitar player and songwriter, known for creating musical parodies about software development. He's into skiing, scuba diving, Lego, cats, travel and photography, and he's normally found hanging around user groups, pubs and rock bars in London wearing a big black hat.

Steffen Forkmann
Steffen Forkmann
Steffen Forkmann
msu solutions GmbH
Steffen Forkmann works as a Software Developer on large billing systems and therefore has great experience in applying functional concepts...

Steffen Forkmann works as a Software Developer on large billing systems and therefore has great experience in applying functional concepts to real-world applications. Steffen is a very active part in the F# open source community and works on many OSS projects like FAKE — F# Make, Paket and the F# compiler.

Alexandre Mutel
Alexandre Mutel
Alexandre Mutel
Unity Technologies
Alexandre Mutel is a Lead Software Architect at Unity Technologies. He is an Open-Source developer that has been contributing to...

Alexandre Mutel is a Lead Software Architect at Unity Technologies. He is an Open-Source developer that has been contributing to several OSS projects including SharpDX, Markdig, Zio. He has been awarded as an MVP since 2014 in Visual Studio and Development Technologies.

Alexandre is passionate about working on a wide range of different problems, from low-level to high-level, in the domain of real-time graphics rendering, GPGPU, audio synthesis, efficient usage of managed languages, documentation and code generation, language design, building workflows.

Konrad Kokosa
Konrad Kokosa
Konrad Kokosa
Gritstep
Author of the Pro .NET Memory Management book. Programming for over a dozen years, solving performance problems and architectural puzzles...

Author of the Pro .NET Memory Management book. Programming for over a dozen years, solving performance problems and architectural puzzles in the .NET world, speeding up web applications. Independent consultant, blogger, speaker and fan of Twitter. He also shares his passion as a trainer at Bottega IT Solutions in the area of .NET, especialy about application performance and diagnostics. Founder of the Warsaw Web Performance group. Microsoft MVP in the Visual Studio and Development Tools category. Co-founder of https://dotnetos.org initiative.

Raffaele Rialdi
Raffaele Rialdi
Raffaele Rialdi
Vevy Europe
Raffaele Rialdi is a senior Software Architect working as a consultant, speaker and trainer. Since 2003, he is a Microsoft...

Raffaele Rialdi is a senior Software Architect working as a consultant, speaker and trainer. Since 2003, he is a Microsoft MVP in the Developer Security category. His passion for the community brought him to be a member of the board of UGIdotNET, president of DotNetLiguria and co-founder of the Italian C++ user group. He is currently working as an architect and developer on the backend of an enterprise project with a specific focus on code generation and working on cross-platform mobile and IoT development in both C# and C++ languages.

Gerald Versluis
Gerald Versluis
Gerald Versluis
DotControl
Gerald Versluis (@jfversluis) is an all-round software developer, Microsoft MVP and three-time author from the Netherlands. After years of experience...

Gerald Versluis (@jfversluis) is an all-round software developer, Microsoft MVP and three-time author from the Netherlands. After years of experience working with Xamarin, Azure and .NET technologies, he has been involved in a number of different projects and has been building several apps and solutions.

Not only does he like to code, but he is also passionate about spreading his knowledge — as well as gaining some in the bargain. Gerald involves himself in speaking, providing training sessions and writing blogs or articles in his free time. Twitter: @jfversluis | Website: https://gerald.verslu.is

Vladimir Khorikov
Vladimir Khorikov
Vladimir Khorikov
Vladimir Khorikov is a Microsoft MVP and has been professionally involved in software development for more than 10 years. Nowadays...

Vladimir Khorikov is a Microsoft MVP and has been professionally involved in software development for more than 10 years. Nowadays he specializes in rescuing legacy code bases and helping teams with large enterprise applications. He practices clean code, domain-driven design, functional programming, and other techniques that help him on this path.

Egor Bogatov
Egor Bogatov
Microsoft
Egor Bogatov is a software developer at Microsoft. He is a member of Mono BCL team and works on reusing...

Egor Bogatov is a software developer at Microsoft. He is a member of Mono BCL team and works on reusing .NET Core code in Mono. Also, he works on 3D graphics and mobile applications.

Show all

Materials

Download program in pdf
Get ready, will burn Introduction to technology For practicing engineers Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer.

Day 1. November 22

Get ready, will burn Introduction to technology For practicing engineers Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer.
Time  & Track
Lecture
Track 1
Track 2
Track 3
08:30

Registration

10:00

Conference opening

10:30

Break

11:00
11:00 Track 1
Generics
Jeffrey Richter
Microsoft
#internals  #clr 
For practicing engineers EN
11:00 Track 2
When to use Test Last, Test First, and TDD
Aleksandr Kugushev
EPAM
#test  #architecture  #tdd 
Introduction to technology RU
11:00 Track 3
Using Tarantool in .NET projects
Anatoly Popov
Net2Phone
#performance  #nosql 
For practicing engineers RU
12:00

Break

12:30
12:30 Track 1
.NET Core 2.1: Intrinsics and other micro-optimizations
Egor Bogatov
Microsoft
#performance  #simd 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. RU
12:30 Track 3
So you want to create your own .NET runtime?
Chris Bacon
Google
#cpp  #internals 
Get ready, will burn EN
13:30

Lunch

14:30
14:30 Track 1
Modern web development with SAFE-Stack
Steffen Forkmann
msu solutions GmbH
#fsharp  #nojs 
Introduction to technology EN
14:30 Track 2
Building integration test environment using Docker containers
Aliaksei Harshkalep
EPAM
#test  #docker 
Introduction to technology RU
14:30 Track 3
Implementing IQueryProvider
Anton Tretyakov
BARS Group
#linq  #orm 
For practicing engineers RU
15:30

Lunch

16:30
16:30 Track 1
From monolith to microservices: history and practice
Konstantin Gustov
Raiffeisenbank
#architecture  #patterns 
Introduction to technology RU
16:30 Track 2
ASP.NET Core multi-tenant architecture: Challenges and solutions
Halil İbrahim Kalkan
Volosoft Computer and Technology
#architecture  #patterns 
For practicing engineers EN
16:30 Track 3
Creating airplane mode proof Xamarin applications
Gerald Versluis
DotControl
#network  #availability 
For practicing engineers EN
17:30

Break

18:00
18:00 Track 1
Boosting memory management in interoperability scenarios
Raffaele Rialdi
Vevy Europe
#performance  #span 
For practicing engineers EN
18:00 Track 3
Domain-driven design: pragmatic approach
Alexey Merson
#ddd  #architecture 
Introduction to technology RU
19:00

Party

19:30
Track 1
RU
Track 2
EN
Track 3
RU
20:00

Live music by Dylan Beattie, Vagif Abilov and Maxim Arshinov

Day 2. November 23

Get ready, will burn Introduction to technology For practicing engineers Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer.
Time  & Track
Lecture
Track 1
Track 2
Track 3
09:30

Registration

10:30
10:30 Track 1
Yield and async-await: internals and uses
Ivan Dashkevich
Kontur
#internals 
For practicing engineers RU
10:30 Track 2
Pragmatic unit testing
Vladimir Khorikov
#methodology  #patterns  #test 
For practicing engineers EN
10:30 Track 3
Make your custom .NET GC — "whys" and "hows"
Konrad Kokosa
Gritstep
#internals  #runtime 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. EN
11:30

Break

12:00
12:00 Track 1
Instant design
Maxim Arshinov
HighTech Group
#architecture  #patterns 
For practicing engineers RU
12:00 Track 2
Windows 10 internals for .NET developers
Pavel Yosifovich
#interop  #performance 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. EN
12:00 Track 3
For practicing engineers EN
13:00

Lunch

14:00
14:00 Track 1
FAKE + Paket — PowerTools for .NET developers
Steffen Forkmann
msu solutions GmbH
#build  #dependencymanagement  #nuget 
Introduction to technology EN
14:00 Track 2
Behind the burst compiler, converting .NET IL to highly optimized native code by using LLVM
Alexandre Mutel
Unity Technologies
#performance  #lowlevel 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. EN
14:00 Track 3
ValueTask: what and why
Egor Grishechko
Insolar
#async  #internals 
For practicing engineers RU
15:00

Lunch

16:00
16:00 Track 1
Building responsive and scalable applications
Jeffrey Richter
Microsoft
#performance  #async 
Introduction to technology EN
16:00 Track 2
Life of actors in clusters: why, when and how
Vagif Abilov
Miles
#architecture  #akka 
For practicing engineers RU
16:00 Track 3
System metrics: learning to avoid pitfalls
Evgeny Peshkov
Kontur
#monitoring  #perfcounters 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. RU
17:00

Break

17:30
17:30 Track 1
Surviving under load: fault-tolerant server, smart client
Igor Lukanin
Kontur
#architecture  #distributed 
For practicing engineers RU
17:30 Track 2
Dodo IS performance architecture
George Polevoy
Dodo Pizza
#patterns  #reliability 
Introduction to technology RU
17:30 Track 3
Building your own debugging toolbox with ClrMD
Christophe Nasarre
Criteo
#internals  #scripting  #windbg 
Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer. EN
18:30

Break

19:00
19:00 Track 1
Ctrl-Alt-Del: learning to love legacy code
Dylan Beattie
Skills Matter
#philosophy  #keynote 
Introduction to technology EN
20:00

Conference closure

Discussion zone

Discussion zone

Special areas to chat with speakers during the coffee breaks. No censor, no panic, no time limit.

BoF-sessions

BoF-sessions

Discussions with no leaders or speakers. The very secret place where the new ideas are born to define the future.

Sponsors

Gold sponsors

Silver sponsors

Information partners

Program committee

Mikhail Shcherbakov
Mikhail Shcherbakov
Mikhail Shcherbakov
Independent developer
Mikhail is Microsoft .NET MVP, a participant of .NET Core Bug Bounty Program, .NET community leader in Russia, an independent...

Mikhail is Microsoft .NET MVP, a participant of .NET Core Bug Bounty Program, .NET community leader in Russia, an independent software developer and consultant. His professional area is static and dynamic code analysis and information security.

Andrey Akinshin
Andrey Akinshin
Andrey Akinshin
JetBrains
Andrey Akinshin is a senior developer at JetBrains, where he works on Rider (a cross-platform .NET IDE based on the...

Andrey Akinshin is a senior developer at JetBrains, where he works on Rider (a cross-platform .NET IDE based on the IntelliJ platform and ReSharper). His favorite topics are performance and micro-optimizations, and he is the maintainer of BenchmarkDotNet (a powerful .NET library for benchmarking supported by the .NET Foundation). Andrey is also a PhD in computer science, a Microsoft .NET MVP, a silver medalist of ACM ICPC. In his free time, he likes to study science (his primary research interests are mathematical biology and bifurcation theory).

Karlen Simonyan
Karlen Simonyan
Luxoft
Senior developer at Luxoft, involved in distributed applications engineering. Karlen blogs and posts articles on Habr about the .NET platform...

Senior developer at Luxoft, involved in distributed applications engineering. Karlen blogs and posts articles on Habr about the .NET platform using nickname szKarlen. Author of atomics.net, beginning WebKit project committer and fork maintainer.

Sasha Goldshtein
Sasha Goldshtein
Sasha Goldshtein
Google
Sasha Goldshtein is a Software Engineer at Google Research. He works on practical machine learning problems with other product teams...

Sasha Goldshtein is a Software Engineer at Google Research. He works on practical machine learning problems with other product teams at Google. Prior to joining Google, Sasha authored books and training courses, consulted worldwide, and spoke at numerous international conferences.

Igor Labutin
Igor Labutin
Lanit-Tercom
An architect. 16 years ago Igor started as a C++ developer, worked with Win, Linux, QNX in areas ranging from...

An architect. 16 years ago Igor started as a C++ developer, worked with Win, Linux, QNX in areas ranging from video processing to network card drivers with a full implementation of the TCP/IP stack. 9 years ago he switched to C# and started dealing with architecture as well. His special focus is on the challenges of apps interaction (mainly on WCF stack), performance problems, as well as the convenience of developers working on complex projects.

Irina Ananeva
Irina Ananeva
Kontur
Irina Ananeva is a software developer at Kontur where she develops different web services for business. In her free time...

Irina Ananeva is a software developer at Kontur where she develops different web services for business. In her free time she contributes to BenchmarkDotNet (a powerful .NET library for benchmarking supported by the .NET Foundation). She's interested in the internals of .NET CLR, performance and micro-optimizations.

Anatoly Kulakov
Anatoly Kulakov
Paladyne Systems
Anatoly was studying to become an information security specialist. He was earning money like a tough C++ developer on Linux....

Anatoly was studying to become an information security specialist. He was earning money like a tough C++ developer on Linux. After getting bored of coding, he felt the urge to create and switched to C#. He has been writing in .NET since its first versions. Currently Anatoly is designing and developing business applications, distributed and fault-tolerant systems. He spends his spare time with ES, CQRS and DDD.

Roman Nevolin
Roman Nevolin
Careem
Developer of the bioinformatics software with .NET, chemical with Java, financial with Haskell and some other interesting stuff. Roman likes...

Developer of the bioinformatics software with .NET, chemical with Java, financial with Haskell and some other interesting stuff. Roman likes to dive into new areas and languages and then talk about them at conferences and use them in production, if necessary.

Vagif Abilov
Vagif Abilov
Miles
Vagif is a Russian/Norwegian developer working for a Norwegian company Miles. He has about three decades of programming experience, currently...

Vagif is a Russian/Norwegian developer working for a Norwegian company Miles. He has about three decades of programming experience, currently focusing on building systems in F# and C#. Vagif is a frequent speaker on software conferences, contributor to some open source projects and maintainer of Simple.OData.Client.

Maxim Arshinov
Maxim Arshinov
HighTech Group
The co-founder of HighTech Group, teacher in KFU and blogger. Try to google "как писать тесты" ("how to write tests"...
Maxim Arshinov

The co-founder of HighTech Group, teacher in KFU and blogger. Try to google "как писать тесты" ("how to write tests" — in Russian). The first result is his article.

Previously, before founding his own company, Maxim was employed as a Web Developer, Team Leader, CTO and Head of Quality Department in various companies from Kazan, Moscow, Saint Petersburg and Antwerp, Belgium.

He is sure that technology is not a "thing in itself", but tools. The tools must suit the problem being solved. The work of an engineer is to select the right tools and create new ones.

Yulia Tsisyk
Yulia Tsisyk
CUSTIS
Yulia had written on various versions of .NET for 5 years in the customized development. At CUSTIS, she develops a...

Yulia had written on various versions of .NET for 5 years in the customized development. At CUSTIS, she develops a large IT system.