About

Hi! My name is Vishal Kotcherlakota. I’m a software engineer by trade. I’ve had plenty of experience in and around IT, ranging from development to operations and everything in between. I’m a huge fan of DevOps, because I think it’s the next logical step for Agile development.

In my spare time, I like tinkering and playing with different things, ranging from web development to microcontrollers and IoT.

What should you know about me?

I’ve got a broad base of experience, ranging from firmware and embedded software development to desktop applications, web development, and systems administration/operations.

I love presenting, and I enjoy sharing my knowledge with others, whether it be as a mentor or a peer.

I’ve led significant software development efforts, managing teams of up to 25 people. In addition to guiding team members, I’ve got experience handling task allocations, executing build plans, and modifying plans on-the-fly to ensure success. I also know what it takes to run software-as-a-service (SaaS) solutions on a global scale.

My resume has more details, and it’s available here.

Latest Blog Post

04 Dec 2018 . . Environment Variables Comments

Introduction

Environment variables are pretty common in scripting. Consider this little snippet.

NAME=”Vishal” echo “The author’s name is ${NAME}”

We define a variable NAME and we can reference it using the $ operator. Variables are a fairly basic concept in most programming languages. But that’s just the tip of the iceberg. In this article, I’m going to make the case that environment variables are a highly flexible key-value system with an inheritance model that makes sense.

To Export or not to Export?

Consider a pair of scripts foo.sh and bar.sh. The first script sets an environment...

Archive

Timeline

  • Februrary 2017 - November 2018

    DevOps / Software Engineering at QuanticMind

  • September 2012 - June 2015

    Attended University of California, Los Angeles (M.S. Engineering, Computer Networks)

  • June 2009 - Februrary 2017

    Started work at Lockheed Martin

  • September 2006 - June 2010

    Attended University of California, San Diego (B.S. Electrical Engineering)

Projects

I’ve been fortunate to work on a couple academic projects during my schooling.

BlueSync: Time Synchronization via Bluteooth Low Energy

This was the capstone project for my master’s degree at the University of California, Los Angeles. Under the guidance of Professor Mani Srivastava, I designed and implemented a time synchronization protocol for BLE devices, utilizing custom GATT profiles and creative use of BLE advertisements.

As part of the project, I had to write firmware for the BlueGiga BLE112 BLE module, which is available on the ARM mbed developer portal.

For an in-depth look at the project, please find it on my GitHub.

Interactive CLI

For my Operating Systems course at UCLA, we needed to implement a custom CLI from scratch, including the following features:

Interactive editing

Command history

Tab completion

Signal handling

Job control

For the presentation, please click here. For the design document, please click here.

Unfortunately, for the sake of future students, our professor asked us not to share our source code.

Arduino Home Automation

This was the final project for my bachelor’s degree at the University of California, San Diego. Along with a lab partner, I designed and built a home automation system powered by an Arduino Microcontroller which controlled lights using the X10 lighting control system and a home theater setup using LEDs. We even built a web server using PHP to control the Arduino. When we set out on this project back in 2010, we didn’t realize we were building an IoT solution.

For the paper describing our project, click here. For the source code, please find it on my GitHub.

For the YouTube video where we demonstrated the project, click here. Please remember that cinematography isn’t one of my strengths. :)

Presentations

I’ve made a couple presentations. Here are ones I’m able to share publicly.

Leadership and Mentorship: Being better at FIRST Robotics

Giving a Technical Presentation

Contact

I’m always interested in new opportunities and challenges. I’d love to hear about yours.