<html> <head> <script src="https://unpkg.com/feather-icons"></script> <title>Resume - Danila Fedorin</title> <link href="css/style.css" rel="stylesheet"> </head> <body> <header> <div class="name">Danila Fedorin</div> <div class="contact"> <div class="contact-item"> <i data-feather="home" class="contact-content"></i> <div class="contact-content">Corvallis, OR</div> </div> <div class="contact-item"> <i data-feather="phone" class="contact-content"></i> <div class="contact-content">(503) 702 0929</div> </div> <div class="contact-item"> <i data-feather="mail" class="contact-content"></i> <div class="contact-content">danila.fedorin@gmail.com</div> </div> </div> </header> <hr> <main> <section> <h1>Education</h1> <div class="section-content"> <em class="italic">Bachelor of Science</em>, Oregon State University, Major: Computer Science | Minor: Mathematics - Completed June 2020 • <em class="bold">4.0 GPA</em><br> <em class="italic">Master of Science</em>, Oregon State University, Computer Science - Expected June 2022 • <em class="bold">4.0 GPA</em> </div> </section> <section> <h1>Skills</h1> <div class="section-content"> <em class="italic">Programming Languages:</em> C, C++, Haskell, Elm, Idris, Crystal, Kotlin, Java, Python, JavaScript, Coq, Nix, Haxe<br> <em class="italic">Languages:</em> English (native), Russian (native), French (conversational, DELF B1 certification) <br> <em class="italic">Additional Skills:</em> Compiler design, formal verification, algorithms, low-level development.<br> </div> </section> <section> <h1>Projects</h1> <div class="section-content"> <!-- <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/abcs"> <h2>abcs</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Calculator program with a complete embedded programming language. </div> --> <!-- <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/AdventOfCode-2020"> <h2>aoc</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Solutions for Advent of Code 2020 problems, with select puzzles formalized using Coq. </div> --> <div class="project-container"> <a class="project-link" href="https://dev.danilafe.com/Web-Projects/blog-static/src/branch/master/code/compiler"> <h2>bloglang</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Compiler for a purely functional, lazily evaluated language explained in-depth on <a href="https://danilafe.com/blog/00_compiler_intro/">personal blog</a>. </div> <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/maypop"> <h2>maypop</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Instructional implementation of a dependently typed functional programming language capable of formal proofs. </div> <!-- <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/chalk"> <h2>chalk</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Compiler from a small imperative language into CHIP-8 bytecode. </div> --> <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/pegasus"> <h2>pegasus</h2> <i data-feather="link" class="project-link-icon"></i> </a> — LALR parser generator currently supporting the C and Crystal languages. </div> <div class="project-container"> <a class="project-link" href="https://github.com/DanilaFe/Scylla"> <h2>scylla</h2> <i data-feather="link" class="project-link-icon"></i> </a> — Elm-based purely functional front end for the Matrix chat protocol. </div> </div> </section> <section> <h1>Publications</h1> <div class="section-content"> Jácome Cunha, Mihai Dan, Martin Erwig, <em class="bold">Danila Fedorin</em>, Alex Grejuc: <em class="italic">Explaining spreadsheets with spreadsheets (short paper).</em><br> <span style="display: inline-block; width: 20px"></span>GPCE 2018: 161-167 </div> </section> <section> <h1>Work Experience</h1> <div class="section-content"> <div class="position"> <h2>Research Assistant, Programming Language Theory</h2> <div class="position-location">Oregon State University, Corvallis, OR | Spring 2018 - Present</div> <ul> <li>Formalized denotational and operational semantics of new <em class="bold">explanation-oriented programming languages.</em></li> <li>Devised and implemented language to explain behavior of spreadsheets to new users.</li> <li>Developed tooling in <em class="bold">Haskell</em> to interpret, verify, generate, and debug programming languages.</li> <li>Contributed to <em class="bold">research paper</em> published to the International Conference on Generative Programming.</li> </ul> </div> <div class="position"> <h2>Undergraduate Teaching Assistant, Programming Language Theory, CS 381</h2> <div class="position-location">Oregon State University, Corvallis, OR | Winter 2020 - Spring 2020</div> <ul> <li>Engaged in weekly question-and-answer sessions regarding course topics.</li> <li>Aided students in implementing a final project in the form of a <em class="bold">custom programming language</em>.</li> <li>Proctored <em class="bold">quizzes and exams</em> for over 200 students.</li> <li>Organized <em class="bold">independent review sessions</em> attended by over 70 students.</li> </ul> </div> </div> </section> <section> <h1>Additional Experience</h1> <div class="section-content"> <div class="position"> <h2>Technical Writer</h2> <div class="position-location">Independent | Spring 2015 - Present</div> <ul> <li>Designed and published website currently live at <a href="https://danilafe.com">danilafe.com</a>.</li> <li>Authored blog posts on topics spanning data structures, web development, programming languages, and compilers.</li> <li>Formalized and described solutions to select Advent of Code problems using <em class="bold">Coq</em>.</li> <li>Created <em class="bold">14-part series</em> on compiler development, walking readers through lexing, parsing, compilation using LLVM, garbage collection, and polymorphic type checking.</li> </ul> </div> <div class="position"> <h2>Lead Programmer</h2> <div class="position-location">Northwest Advanced Programming Workshop, Portland, OR | Summer 2017</div> <ul> <li>Designed and implemented a <em class="bold">desktop calculator</em> application with a focus on usability and feature-completeness.</li> <li>Worked on a variety of components, including parsing input through a custom regular expression engine, evaluating expressions through Taylor Series, and UI design.</li> <li>Profiled and debugged application using <em class="bold">VisualVM</em> in order to find inefficiencies, reducing computation time by 60%.</li> <li>Led a small team using the <em class="bold">git version control system</em>.</li> <li>Exercised public speaking and communication skills by reporting progress to supervisor and presenting to other teams.</li> </ul> </div> <div class="position"> <h2>Game Developer</h2> <div class="position-location">Oregon Game Project Challenge, Portland, OR | Spring 2016 and 2017 </div> <ul> <li>Worked in a team to complete video game to be presented at main event.</li> <li>Created a game engine from scratch using <em class="bold">Entity Component Systems</em> architecture.</li> <li>Used <em class="bold">OpenGL shaders</em> and normal mapping to create 2D-shadow system.</li> <li>Developed novel interaction between physical components (<em class="bold">microcontrollers</em>) and the video game for multi-user cooperation.</li> </ul> </div> </div> </section> <section> <h1>Honors and Awards</h1> <div class="section-content"> <ul> <li><em class="italic">Drucilla Shepard Smith Award</em> — Awarded to students maintaining a GPA of 4.0 while attending Oregon State University.</li> <li><em class="italic">Honor Roll (all terms)</em> — Awarded to students maintaining a full credit load and a GPA above 3.5.</li> <li><em class="italic">International Baccalaureate Diploma Scholarship</em> — $1,000/term scholarship awarded to recipients of the IB Diploma.</li> <li><em class="italic">Finalist</em> — Google Code-In 2016, online competition in which participants complete tasks for open-source projects.</li> </ul> </div> </section> </main> <script> feather.replace() </script> </body> </html>