1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
# About me
Hi. This is me:
{{< figure src="/kd.jpeg" alt="my pic" width="100" >}}
My name is Kumar. Some people call me *kd*, or *ku-band-mar*, I'm known for being...
* that guy who hosts his own website, dropbox, search-engine etc. [Why?](post/self-host)
* a programming purist, and linguistic enthusiast.
* 👎 down on social-media. I think they lead to dystopia. [Read more](post/self-host#privacy).
* a B.Sc in CS. at U of T with a focus in NLP 😌
# Projects
* [home-lab](https://gitlab.com/kdam0/home-lab)
* My Terraform, Ansible repository for self-hosting as described in [this post](post/framework-server).
* active
* [vps](https://gitlab.com/kdam0/vps)
* My Ansible repository for self-hosting everything on my NAS.
* ~~active~~ replaced by home-lab
* [nccli](https://gitlab.com/kdam0/nccli)
* A Docker-ized Golang CLI for CRUD ops for Namecheap's DNS settings.
* active
* [nixdots](https://gitlab.com/kdam0/dotfiles-nix)
* My dotfiles for the Nix ecosystem as started in [this post](post/nixos-p1).
* active
* [dots](https://gitlab.com/kdam0/dotfiles-nix)
* My dotfiles for general Linux home mgmt.
* ~~active~~ replaced by nixdots
> If you found something above to be useful, consider [sending](#donate) a few coins my way!
---
# Professional Life
*Treat this section as an extension of my resume.*
## 2020 - now
Currently working as a **DevOps** at [Kepler](https://kepler.space) 🛰️.
This is mostly a software (infrastructure) dev gig for a start-up, which is a bit new to me
coming from a more traditional DevOps role with a mature company.
There is a ton of specialized *space*
related equipment here that present interesting problems in DevOps.
I've learned a ton about embedded computers, networking and network automation,
which has opened my world up to all sorts of home projects for which I am very grateful for.
So far, I've been responsible for the following:
* Establishing Infrastructure as Code (IaC) as standard practice with Ansible.
* Implementing a netboot infrastructure for our development servers - RPis -
using Packer, PXE, Awx (Ansible Tower) to keep them synced, predictable, and up-to-date.
* Built a custom Linux router to support our unique hardware testing requirements
for on-demand subnet generation/teardown for isolated tests.
* Automated our Lab network infrastructure with Ansible.
* Devised a test-automation framework using Django to facilitate reservation,
as well as [HIL](https://en.wikipedia.org/wiki/Hardware-in-the-loop_simulation)
(Hardware-In-the-Loop) testing to allow us to more reliably, and frequently test our HW.
* Designed and deployed our highly-available Kubernetes cluster to be our software
platform going forward.
Beyond my work as an Individual Contributor (IC), I've also been responsible for instilling DevOps
*principles* within the team on our journey to maturity.
## 2019 - 2020
Worked as a **DevOps Engineer** at [AcuityAds](https://acuityads.com) in Toronto.
The main selling point for me to work here is that Acuity does not use
AWS, GCP or Azure etc. to host its infrastructure, it has its own on-prem 'cloud'.
This presents substantial challenges for us as DevOps Engineers that would normally be handled by a
public cloud provider.
Apart from this, due to the nature of adtech, we deal with massive amounts of data, which forces
us to be very careful about the types of technologies we use (scale).
Here is a subset of what I've gained experience with during my time:
* Infrastructure: VMWare, Physical
* Provisioning: Ansible, Terraform, Cobbler
* Containerization: Docker, Kubernetes
* CI/CD: Git, BitBucket, Bamboo (we host the entire Atlassian suite in-house)
* Monitoring:
* TICK (Telegraf, Influxdb, Chronograf, Kapacitor)
* ELK (Elasticsearch, Logstash, Kibana), with filebeat and metricbeat beats
* Prometheus
* Grafana
* Nagios, Pagerduty, Pingdom
* Data: MySql, Aerospike, Kafka, HDFS, Druid
* Scripting: Golang, Bash, Python. <em>Some</em> of my work can be on my Gitlab profile:
* Golang:
* a fast, containerized [cron script](https://gitlab.com/kdam0/go-druid-mysql-influx)
that interacts with Druid, MySql, and Influxdb written in Go.
Basic unit testing.
This is a job that powers one of our major alerting dashboards.
* a containerized highly modular [Rest Api](https://gitlab.com/kdam0/devops-api)
that writes to Influxdb.
This is something we run in K8S as a Service to monitor Cronjobs that run in K8S.
* Python: a [script](https://gitlab.com/kdam0/slack-to-teams) to migrate
Slack exports to MS Teams messages.
This is something we used when we gave up on Slack.
* Bash: a small [collection](https://gitlab.com/kdam0/random-shell-helpers) of helper
scripts that I used frequently for random things.
## 2016 - 2017
I worked at [Achiga](https://achiga.io) (formerly *WebCanada*) as
part of my [PEY](https://web.cs.toronto.edu/undergraduate/pey) (internship)
program from U of T for 12 months. As part of this, I was involved in:
* A fast paced Agile environment where I was a Full Stack Developer working with
**PHP (Zend), MySql, and JavaScript**.
* Git + BitBucket + JIRA (basically the whole Atlassian suite), with Vagrant
* The Pipeline team working on day to day features and bugs in the CMS powering thousands of
local hotel sites around the world for Starwood Hotels.
* Debugging and optimizing cronjobs responsible for storing hotel rates in
our database which is critical to hotel revenue.
* Contributing to the Gallery Page (CMS as well as user facing UI).
See [Design Hotels Gallery Page](https://designhotels.com/gallery)
towards the end of my tenure.
## 2014 - 2016
I've worked on several other small-buisness type projects involving website designing,
and scripting over the years in between semesters.
---
# Donate
<details>
<summary> Monero (XMR) </summary>
<br>
```
42hFshxmNoFZfAkDJTjSx9MUruMHdLTiDTE4efpP7xZTYwHMjwDZ6eJea2EnyBGGr5ab81cAovBxxT6KSvpUY5roUdkP1Qj
```
{{< figure src="/xmr.png" alt="xmr wallet qr code" width="100" >}}
</details>
<details>
<summary> Bitcoin (BTC) </summary>
<br>
```
bc1q4em7f7mvl6wkzc8uyq4365td7w5n02uh64z2za
```
{{< figure src="/btc.png" alt="btc wallet qr code" width="100" >}}
</details>
|