Avatar

Caner Derici

Software Engineer

PhD Candidate, Computer Science

Sandy, UT, USA

cderici

caner@dericilab.live


Hi!

I'm a software engineer, post-proposal PhD candidate, homelabber, content creator, biker, guitar player, and a husband.

I have expertise in distributed systems, compilers and programming languages. I'm about to finish my PhD, and I worked for Canonical for over three years, and now I'm seeking exciting new opportunities. My work in Canonical focused on the distributed orchestration of enterprise-level cloud workloads. I was part of the Juju team, where I primarily used Golang and Python.

My PhD is in Computer Science at Indiana University, specializing in Programming Languages (PL), and minoring in Logic at the Department of Philosophy. My research focuses on investigating the run-time performance characteristics of implementing functional languages (e.g. Racket) on a meta-tracing JIT compilers. My advisor is Sam Tobin-Hochstadt.

Check out:

  • Professional page, if you like to learn more about my professional skills, specialties, my career in general.
  • HomeLab page, if you want to check out the cool stuff I'm doing with my data center I built at home.
  • Building a Community page, if you're curious about the content I create and the community I maintain as a hobby on Twitch and YouTube.
  • Bike, Music, Arts, Travel, and Arch pages, if you'd like to have more information about me personally.

Finally, the most common question people ask me in the US is "How do you say your name?". I'm from Turkey, and I understand "Caner" is a bit tricky to pronounce for English-speaking folks. No worries, you may pronounce it however it is easiest for you, I really don't mind. However, if you want to hear the way I pronounce my full name, here's a sound sample:

Thanks for checking out my homepage!


Some News & Posts by Me

June 2023

Manual Provisioning on AWS using Terraform Juju Provider

In this episode of “what kind of cool stuff we can do with the Terraform Juju provider,” we explore how to manually provision machines from our existing setup into our Juju model using the Terraform Juju provider. For a primer on the Terraform provider itself, check out the latest posts by some handsome fellas here and there.
...
Let’s see how you can actually do that with our recently added support for manual provisioning on the terraform-provider-juju with a bit of a tutorial style demo. Check out the rest of the post for details.


June 2023

A generic way to tunnel into a Kubernetes cluster to communicate with a Juju controller with the Juju Terraform provider

A while ago @jnsgr introduced the Juju terraform provider and since then we all have been celebrating the versatility of Hashicorp’s Terraform backed by our Juju almighty.
Recently our friends in the CommSys team raised an interesting question and asked, “Is it impossible for the terraform juju provider to talk to a controller within a k8s cluster without utilizing the nice and useful proxy-config? How about the clusters that don’t provide that proxy?”. Here in this post we demonstrate a simple way to show that it is indeed possible to access to a controller in any type of k8s cluster with a bit of a support from the environment. The keyword is, the load-balancer.
Here's the rest of the post