Personal information me.jpg
Name Viktor Ivanov Kirilov
Address Sofia, Bulgaria
Nationality Bulgarian
Cell + 359 889 897 183
Date of birth 08.11.1991
(27 years old)

Talk: code::dive 2019: C++ as Assembly 2.0 - Hello Nim

Talk: The architecture of a modern SQL engine - query compilation, optimization and execution

Talk: ACCU 2019: Nim - the first compiled language with full support for runtime hot code-reloading
slides, other conferences: C++ User Group Sofia

Talk: CppOnSea 2019: The Hitchhiker's Guide to Faster Builds
slides, other conferences: NDC TechTown 2019, C++ Russia 2019, C++ CoreHard 2019, code::dive 2018, MeetingC++ 2018, Total Chaos 2018, in Bulgaria: C++ User Group Sofia

Talk: CppCon 2018: Interactive C++ Compilation (REPL) Done in a Tiny and Embeddable Way
slides, other conferences: C++ Russia 2018

Talk: CppCon 2017: Doctest - Implementing and Using the Fastest Modern C++ Testing Framework
slides, other conferences: code::dive 2017, Cpp-Summit 2017, in Bulgaria: CG2 2016, Openfest 2016

Work experience
- present
Employer NuoDB - elastic SQL database: as a Software Engineer
Activities and responsibilities Made C++ build times up to 70% faster. Implemented memory tracking of client connections. Worked on various functionality such as aggregate functions in the SQL layer. Gave a talk about the architecture.

Nov, 2018 - Feb, 2019 (4 months)
Employer sponsorship of the development of Nim: as a Contractor
Activities and responsibilities On a 4 month contract - implemented hot code-reloading for the Nim programming language - making it the first and only natively compiled high performance language with that capability. This greatly improves iteration times for developers and paves the way for implementing a REPL on top of it (which could be followed by a Jupyter kernel). Gave a talk about it on ACCU 2019 in Bristol, UK.

- present
Employer Toptal: as a Contractor

Jan, 2016 - Oct, 2018 (2 years 10 months)
Employer None - wrote open source
Activities and responsibilities
  • - doctest - The fastest feature-rich C++11 single-header testing framework for unit tests and TDD. Gave a talk about it at CppCon 2017 and at code::dive 2017. Responsible for marketing, support, documentation and testing in addition to engineering. Got published on JetBrains and ACCU.
  • - RCRL - Read-Compile-Run-Loop: tiny and powerful interactive C++ compiler (REPL) - blog post.
    Also had a talk about it at CppCon 2018 and C++ Russia 2018.
  • - game engine - With a strong focus on improved workflows: a better object model for the business logic with the help of the dynamix library, no serialization boilerplate (custom automatic reflection built on top of LibClang - keeping things DRY), and fast iteration times - with support for hot reloading of almost any C++ component of the project at runtime (including changes to the memory layout of classes).

July, 2013 - Dec, 2015 (2 years 6 months)
Employer Chaosgroup: as a Software Engineer
Activities and responsibilities Integration of V-Ray into Maya (scene translator / exporter / integration of XGen), CMake, optimization.

July, 2012 - June, 2013 (1 year)
Employer Gameloft Bulgaria: as a Game Developer
Activities and responsibilities Gameplay/3D/UI/network programming. Engine structure - level/object management.

Technical skills
Programming languages C++ - advanced (10 years experience). Other: C, Python, Nim, PHP, GLSL, JavaScript, Typescript, SQL, Lua, Java, Assembly, and others.
APIs / libraries / frameworks STL, Boost, Qt, Protocol Buffers, LibClang, OpenGL, imgui, SDL and others.
Tools Visual Studio, Git, Subversion, Maya, CMake, build systems, compilers (MSVC/Clang/GCC/Intel/Emscripten), Clang/GCC tools (formatting, static analysis, sanitizers), Valgrind, Windows, Unix, Continuous Integration (Jenkins, Travis CI, Appveyor), Atlassian products, Intel VTune.
Other Knowledge in game development, graphics programming, algorithms, databases, distributed systems, multi-threaded programming, OOP, testing, automation, databases, distributed systems, network programming, network security, TCP/IP stack. Some experience with iOS.

English excellent

2005-2010 Technology School Electronic Systems (TUES), associated with the Technical University of Sofia
Title of qualification awarded Specialty: “Programming and information technologies”
Diploma serial No.К-10, No.011172, reg. No. 749-68/24.06.2010
Thesis: “Development of a 2D Worms clone with SDL under Linux” - link
2010-2012 University of Sofia "St. Kliment Ohridski", Faculty of Mathematics and Informatics - studied "Informatics"
2006-2008 English language course
Level achieved – C1
‘Europe Schools’ – Sofia
Certificate “CAE”(C1), ESOL
2008-2010 CISCO CCNA 1-4 courses
‘LCA-ELSYS TU’ - Sofia

Personal site
GitHub profile
Linkedin profile
StackOverflow profile
Project Euler profile
Also got 7-th place on the 6-th Bulgarian student competition for networking - 2009 (CISCO).