Zak Kohler, Developer in Akron, OH, United States
Zak is available for hire
Hire Zak

Zak Kohler

Verified Expert  in Engineering

Software Developer

Location
Akron, OH, United States
Toptal Member Since
May 27, 2021

Zak is a chemical engineer by training but a hacker at heart. With extensive programming experience (starting in third grade), he excels at delivering the right solution that meets goals for functionality, performance, reliability, and maintainability. While serving as a chemical and software engineer at Cooper Tire & Rubber Company since 2015, he has applied his knowledge of C, Compilers, operating systems, and CPUs, and presented talks on CPUs, Renode, and RISC-V.

Portfolio

Radical Semiconductor Inc
Python, Python 3, Flask, Blazor, .NET, .NET 6, Architecture...
Cooper Tire and Rubber Company
Python, SQL, Web, Azure, DevOps, C#, Open Neural Network Exchange (ONNX)...
Stanford University - Main
Python, Jupyter, Pytest, Widgets, Matplotlib, Graphical User Interface (GUI)...

Experience

Availability

Part-time

Preferred Environment

Linux, Vim Text Editor, Visual Studio Code (VS Code), GCC, Clang, Make, Clean Code, Python, Test-driven Development (TDD), Bash, GNU Debugger (GDB)

The most amazing...

...success I've achieved was building an ML-based expert system that outperforms humans in the chemical engineer role for which I was originally hired.

Work Experience

Full-stack Developer

2022 - PRESENT
Radical Semiconductor Inc
  • Developed a CI/CD pipeline for a custom fork of OpenSSL, a Flask back-end, and a .NET front-end.
  • Created automated unit and integration testing for all back-end functionality.
  • Suggested and implemented improvements to the overall project architecture, which led to increased maintainability and improved the deployment experience.
Technologies: Python, Python 3, Flask, Blazor, .NET, .NET 6, Architecture, Continuous Integration (CI), CI/CD Pipelines, Open Source, OpenSSL, Make, GCC, Protobuf, APIs, Full-stack, Back-end, SSL

Chemical and Software Engineer

2015 - PRESENT
Cooper Tire and Rubber Company
  • Identified an opportunity to use machine learning to automate a core skill set required in my chemical engineering role. Successful execution involved building the data infrastructure, ML deployment, and a UI that naturally augments engineers.
  • Developed an image analysis algorithm that is unprecedented in the industry. This was a curiosity, outside my duties, from the manufacturing side. It reduced a task that took three hours to the time required to scan the samples.
  • Created a self-serve DevOps system for "engineers who code." This involved creating the automation and documentation, code review, and pair programming to enable non-developers to use Git and Python to develop and deploy engineering apps.
Technologies: Python, SQL, Web, Azure, DevOps, C#, Open Neural Network Exchange (ONNX), Machine Learning, Clean Code, Make, Linux, Test-driven Development (TDD), Bash, Polymer, Iterative Design, Vim Text Editor, Public Speaking, Jupyter Notebook, Graphical User Interface (GUI), Blazor, Pytest, Matplotlib, JavaScript, CSS, Visual Studio Code (VS Code), Flask, Data Structures, Object-oriented Programming (OOP), Back-end, HTML5, SQLAlchemy, Full-stack, HTML, Software Architecture, .NET, Architecture, JSON, REST, OAuth, OAuth 2, Microsoft SQL Server, Visual Basic 6 (VB6)

Front-end Python Developer

2021 - 2021
Stanford University - Main
  • Developed a new interactive Jupyter Notebook within a multi-notebook analysis workflow. This included a full GUI experience built using ipywidgets.
  • Unit tested all back-end functionality according to existing testing standards.
  • Suggested and implemented improvements to the user interface specification, which made the end user experience much smoother than initially conceived.
Technologies: Python, Jupyter, Pytest, Widgets, Matplotlib, Graphical User Interface (GUI), Visual Studio Code (VS Code), Data Structures, Object-oriented Programming (OOP), HTML5, Software Architecture, Architecture

Molecular Dynamics Intern | Tread Compounding Intern

2012 - 2013
Cooper Tire and Rubber Company
  • Created analytics tools used globally by 50+ materials engineers.
  • Experimented with accelerating molecular dynamics simulations using GPUs by recompiling LAMMPS, which resulted in a two-time speed up.
  • Evaluated 10+ experimental raw materials in rubber compounds, such as resin and liquid polymer.
Technologies: Make, Python, Linux, C, Bash, GCC, Excel VBA, Jupyter Notebook, Graphical User Interface (GUI), Data Structures, Object-oriented Programming (OOP)

Web Developer

2006 - 2012
Freelance
  • Customized an open-source forum and integrated it with an existing website.
  • Maintained legacy websites for multiple clients, always responding promptly to requests for adjustments.
  • Created a book launch promotion that enabled fans to send a themed email to their friends.
Technologies: CSS, JavaScript, SQL, Linux, PHP, Graphical User Interface (GUI), Web, Back-end, Full-stack, HTML

Baremetal RISC-V Renode

https://github.com/y2kbugger/baremetal-riscv-renode
An educational introduction to developing Embedded C products using simulated hardware aimed at beginners. I explore the line between hardware and software by creating a series of demos within a minimal, free, open-source environment. These demos span from blinking an LED to implementing pieces of a toy operating system. The goal is to shed light on the parts of the system that we take for granted and gain a better understanding of computers and operating systems.

I was the sole developer of the code examples and compilation instructions, along with a blog post and LinuxFest 2020 conference talk on the subject. This lowers the barrier of entry for new Embedded C and ASM developers while adding to the ecosystem for open hardware standards such as RISC-V.

Conference Talk on How CPUs Work

https://mybinder.org/v2/gh/y2kbugger/sapy.git/mybinder-release
A conference presentation covering my own micro-programmable CPU simulator. The goal was to teach how CPUs work internally and how they interface to the rest of a computer. I was the sole developer of the interactive framework that allows single-stepping through microcode, assembling from a custom assembly language, and performing simple IO. I was also the sole contributor to this project, which I presented at the PyOhio 2019 conference.

My talk, "Learn How Computers Work Between Silicon and Assembly: Build a CPU with Python," helps high-level programmers understand what is happening in a computer at a lower level. During the talk, we build up a CPU focused on transparency, interactivity, and modularity. Our CPU has a configurable architecture and machine language, and it is extensible with new instructions to add functionality. The talk covers registers, data and address buses, memory (ROM and RAM), IO, and assemblers.

A Simple RISC-V Multitasking OS for Learning

https://blog.y2kbugger.com/2021-12-03-ohiolinuxfest.html
Explore the line between hardware and software by writing code with absolute control over the CPU and peripherals. We'll explore how to do this using a completely free and open source simulator (Renode), toolchain (GCC), and instruction set (RISC-V). Using assembly, we'll initialize system parts such as CPU interrupts and privilege levels. Finally, we'll review the assembly code for doing a context switch, the key software which enables multitasking via timesharing.
2010 - 2015

Bachelor's Degree in Chemical Engineering

University of Akron - Akron, Ohio, USA

Libraries/APIs

Polymer, SQLAlchemy, Matplotlib, OpenSSL, Protobuf

Tools

Open Neural Network Exchange (ONNX), GCC, Make, Valgrind, Vim Text Editor, Jupyter, Pytest, GNU Debugger (GDB)

Frameworks

Flask, .NET, Blazor, OAuth 2

Storage

JSON, Microsoft SQL Server

Languages

Python, Visual Basic 6 (VB6), Visual Basic, SQL, C#, Bash, Excel VBA, C, Embedded C, Assembly, HTML, PHP, CSS, JavaScript, HTML5, Python 3

Paradigms

Clean Code, Object-oriented Programming (OOP), DevOps, Iterative Design, Test-driven Development (TDD), RISC-V, REST, Continuous Integration (CI)

Platforms

Linux, Jupyter Notebook, Visual Studio Code (VS Code), Web, Azure

Other

Machine Learning, Renode, Public Speaking, Graphical User Interface (GUI), Data Structures, Back-end, Full-stack, Software Architecture, Architecture, Simulations, Biotechnology, Monte Carlo Simulations, Differential Equations, PID Controllers, Cell Biology, Chemistry, Biochemistry, Process Economics, CPU Design, Compilers, Molecular Biology, Widgets, Linux Kernel, Operating Systems, OAuth, .NET 6, CI/CD Pipelines, Open Source, APIs, SSL

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring