VIVEK BHAT

Hello

About me

I work for Intel as a Software Architect. I am really fortunate to work along with some of the greatest minds in Artificial Intelligence at Intel Saffron. Being part of a small workforce, I get to work on a lot of projects.

I graduated in December 2017 with a Masters in Computer Science from North Carolina State University. I have a Bachelor of Technology degree in Jamia Millia University, New Delhi, India. I did my schooling from Bal Bharati Public School, India

My interests mostly include Cloud Software Engineering, Automation and Configuration Management of Infrastructure, Java Programming, Android application development and Continuous Integration tools and all sorts of R&D in computers.
My hobbies include listening to music, playing soccer, cricket, swimming etc. I was also the captain of the soccer team in my undergrad.



Objective

I like to work on challenging opportunities in DevOps and Cloud technologies where my advanced skills, education, extensive training, and experience can be fully utilized

Say Hello

Favourite Quotes

Education

North Carolina State University, NC (USA)

Duration: Aug 2016 - Dec 2017 (Anticipated)
Degree: Masters in Computer Science
GPA – 3.7/4.0

Coursework
Fall 2016:

  • Design and Analysis of Algorithms (CSC-505)
  • Software Engineering (CSC-510)
  • Object Oriented Design and Development (CSC-517)
Spring 2017
  • DevOps (CSC 519)
  • Database Management System (CSC 540)
  • Computer Networks (CSC 570)

Jamia Millia University, New Delhi (India)

Duration: Aug 2012 - Jun 2016
Degree: Bachelor of Technology, Electronics and Communications
GPA – 8.3/10

HTML tutorial

SKILLS:

  • PROGRAMMING: JAVA, Ansible, JavaScript, RUBY, HTML5, CSS, Bootstrap, Knockout.js, JQuery, XML, JSON, NODE, Node Package Manager, APIs, Python, C, C++ etc
  • TESTING: JUnit, RSpec, Capybara, Cucumber, Selenium, Mocking, Mocha, Nock, Mockito, Chai.
  • DATABASES: MySQL, MariaDB, AWS Aurora, DynamoDB, AWS Redshift, Redis, Memcache, SQLite, SQLite3, Postgres SQL (PGSQL).
  • TOOLS / UTILITIES: Terraform, Teamcity, JIRA, Docker, Git, GitHub, Eclipse, RubyMine, Twitter APIs, GitHub APIs, Facebook APIs, Google APIs, Amazon Web Services, AWS Elastic Compute Cloud (AWS EC2), AWS Simple Storage Services (S3), Android Developer Tools (ADT), Android Studio.
  • OPERATING SYSTEMS: Mac OS Sierra, Mac OS X El Capitan, Windows, Linux flavors - Ubuntu, Kali, Mint, Zorin.

PROFESSIONAL EXPERIENCE

Software Architect, INTEL
Location: Cary, NC
Duration: January 2016 - present
I work as a Sofware Architect for Intel Saffron and have expertise in AWS Solutions. I am responsible for highly available, highly redundant and fault tolerant Saffron Clusters on AWS for our customers.
Major Projects until now:

  1. Intel Saffron Solutions Architect
    • Create highly available, redundant and fault tolerant clusters on AWS for Intel Saffron customers
    • Implement services like AWS Lambda and Cloudwatch in infrastructure to reduce the costs by 70%
    • The VPCs and Networks created are industry level secure and meet Intel's high security standards.
  2. SMB Centralized Logging Project Owner
    • Developed the new logging mechanism to visualize the logs for Saffron Memory Base using Elasticsearch, Kibana and Filebeats to monitor and get logs from worker nodes
    • Removed the NFS mounting of log directories to achieve a centralized logging system which in turn reduced network latency by 50%
  3. AWS Auto-Deployment Client
    • Introduced modern DevOps techniques and improved the deployment of Saffron by using Intel-AWS EC2 instances and Ansible
    • The conventional procedure to install Saffron was to buy a server (not AWS) and manually ssh into it and then set the environments and configure it accordingly.
    • This would usually take more than 2 hours and going through cumbersome steps again and again
    • Now, with just one-step Ansible script, we get a new up and running EC2 instance with Saffron installed and configured in it
  4. Saffron Automated Tool-Setup Client
    • Revamped the conventional deployment strategy of the tool being built for an external agency by Intel
    • The new technique deploys an up and running software on top of a Saffron base
    • Also introduced Docker Compose and Docker Swarm to help with new releases

Software Development Engineer Intern, INTEL
Location: Cary, NC
Duration: May 2016 - August 2016
I was part of the Intel Saffron's Professional services team. I dealt directly with 2 of our clients and worked on various projects in my internship. 3 major projects I worked on were,
Internship Projects:

  1. Intel Saffron REST Client
    • Developed Intel Saffron’s Java REST tool that encapsulates the unique security protocol and complex API from scratch
    • Earlier, creating one ‘space’ took more than an hour. Now, the customers can create thousands of SMB spaces in less than 5 minutes
    • Its intuitive deliverable zip file and heavy documentation guide made SMB REST calls simpler and easier for the customer
    • Reduced the engineer allocation time from 15.75 hours to 1 hour, 93.65% reduction in time, hence our company saved money
  2. AWS Auto-Deployment Client
    • Introduced modern DevOps techniques and improved the deployment of Saffron by using Intel-AWS EC2 instances and Ansible
    • The conventional procedure to install Saffron was to buy a server (not AWS) and manually ssh into it and then set the environments and configure it accordingly.
    • This would usually take more than 2 hours and going through cumbersome steps again and again
    • Now, with just one-step Ansible script, we get a new up and running EC2 instance with Saffron installed and configured in it
  3. Saffron Automated Tool-Setup Client
    • Revamped the conventional deployment strategy of the tool being built for an external agency by Intel
    • The new technique deploys an up and running software on top of a Saffron base
    • Also introduced Docker Compose and Docker Swarm to help with new releases


RECENT PROJECTS UNDERTAKEN

Open Source Contribution:
  1. Expertiza Docker Image:
    1. About Expertiza: Expertiza is an open source project based on Ruby on Rails framework. Expertiza allows the instructor to create new assignments and customize new or existing assignments. It also allows the instructor to create a list of topics the students can sign up for. Students can form teams in Expertiza to work on various projects and assignments. Students can also peer review other student's submissions. Expertiza supports submission across various document types, including the URLs and wiki pages.
    2. Why I did this project?:

      Earlier, to install Expertiza one would have to do the following 3:

      1. Clone the github repo of Expertiza and manually install all the correct versions of ruby, Java, rails etc. Which hardly ever worked for anyone
      2. Use a VCL Image : This is slower and requires a proper internet connection to maintain the network
      3. Use a Virtualbox image of Expertiza: This works fine but is super slow and consumes around 20 Gb of memory. Hence not efficient
      I didn't like this and wanted to automate the process with no errors. So I went on to solve this problem using Docker and some shell scripts that automate the process of installation of Expertiza and remove any errors that the developer might do.

    3. What I did? : GitHub link to the Docker folder
      • I worked on creating a docker-compose file to combine Ruby on Rails, SQL and Redis that are used for Expertiza.
      • A new shell script that would connect all the missing dots and ultimately launch expertiza in no time.
    4. GitHub Fork: https://github.com/VivekBhat/expertiza

  2. Expertiza Log Visualization:
    1. Why I did this project?:

      The production logs produced were HUGE!!! There was no way to analyze or visualize the logs. So, I created a log visualization tool for expertiza using the ELK Stack
      ELK Stack consists of:

      1. Elasticsearch : Elasticsearch is a distributed, JSON-based search and analytics engine designed for horizontal scalability, maximum reliability, and easy management.
      2. Logstash: Logstash is a dynamic data collection pipeline with an extensible plugin ecosystem and strong Elasticsearch synergy.
      3. Kibana: Kibana lets you visualize your Elasticsearch data and navigate the Elastic Stack.

    2. What I did? : GitHub link to the Docker folder
      • I worked on creating a docker-compose file to combine Ruby on Rails, SQL and Redis that are used for Expertiza.
      • A new shell script that would connect all the missing dots and ultimately launch expertiza in no time.
    3. GitHub Fork: https://github.com/VivekBhat/expertiza
  3. Expertiza (Final Project):

  4. Expertiza (OSS Project):

OTHER PROJECTS UNDERTAKEN

  • Configure Jenkins


  • Provisioning Servers


  • Docker Fun
    • Description: This repo just has some docker coding that I did for practicing docker and to see its functioning and working.

      In the project I have done the following:

      1. Install Docker
      2. Install Vagrant
      3. Create Image
      4. Build Image
      5. Create Server
      6. Run Server on a port
    • Tools and tech Used:
      1. Docker
      2. Vagrant
      3. VirtualBox
    • GitHub Repository: https://github.com/VivekBhat/Ansible-Playbook


  • Ansible Playbooks
    • Description: Wrote two different Ansible Playbooks with different plays. The goal of the project was to demonstrate how to use ansible to help us configure software. It can be used to do the following:
      1. Playbook 1 does the following:
        • Install node.js
        • Install forever
        • Pull/clone git repo
        • Install npm packages
        • Run app: forever start main.js
        • Security: Ensures bash, openssl, openssh-client, and openssh-server are running latest version.
        • Cleanup: Removes content in /tmp/*
      2. Playbook 2 does the following:
        • Provision: A new virtual machine from a virtual machine provider Amazon EC2 is provisioned.
        • Screencast: This screencast shows how to perform provisioning of an Amazon Web Services EC2 instance.
    • Tools and tech Used:
      1. Ansible
      2. Vagrant
      3. VirtualBox
      4. Amazon Web Services
    • GitHub Repository: https://github.com/VivekBhat/Ansible-Playbook


  • Complexity Calculations:
    • Description: It can be used to do the following:
      • Do a simple calculations:
        1. String Usage: How many string literals are used in file.
        2. ParameterCount: The number of parameters for function.
        3. PackageComplexity: The number of imports used in file.
        4. Returns: The number of return statements in function.
        5. AllConditions: The total number of conditions in file.
      • Using multiple visitors
        1. SimpleCyclomaticComplexity: The number of if statements/loops + 1.
        2. MaxMessageChains: The max length of a message chain in a function.
        3. MaxConditions: The max number of conditions inside one if statement per function.
        4. MaxNestingDepth: The max depth of scopes (nested ifs, loops, etc) per function.
    • Tools and tech Used:
      1. Node
      2. NPM
      3. JavaScript
      4. Twitter API
      5. Sublime Text
    • GitHub Repository: https://github.com/VivekBhat/ComplexityJS

  • Library Room Booking Web App

  • Twitter Data-Bind:


  • Selenium



    Selenium
  • Selenium Testing:

  • Websites And Bots Developed:
    1. My Personal Website: http://vivekbhat.s3-website-us-west-2.amazonaws.com
    2. vivekbhat.github.io : My GitHub-Pages page

    3. Library Room Management System:

    4. Twitter Follower Bot for @botifulbot

    5. FlagLagBot
      • Description: Aimed to bridge the gap between LaunchDarkly (tool for creating and managing feature flags) and code that uses it, user can communicate with our SlackBot and perform different tasks
      • Bot commands on Slack:
        1. List flags
        2. Create Flags
        3. Delete FLag
        4. Toggle Flag- ON/OFF
        5. Integrate Feature
        6. Discard Feature
      • The bot will also notify you if:
        1. A flag has been deleted in LaunchDarkly and can also integrate or discard feature.
        2. A flag has been on too long
      • Tech Used:
        1. Node
        2. NPM
        3. JavaScript
        4. Twitter API
        5. Slack API
        6. LaunchDarkly
      • GitHub Repository: FlagLagBot

      • Slack API

        Launch Darkly

    6. Wikipedia Page writer of Comparison_of_continuous_integration_software


    7. Git-Bot
    8. GitHub Bot
      • Description: This bot bot can be used to :
        1. listBranches in a given repo under an owner
        2. create a new repo
        3. creating an issue for an existing repo
        4. editing a repo to enable wiki support and many more.
      • Tech Used:
        1. GitHub Developers API
        2. cURL
      • GitHub Repository: Git-Bot

    9. Twitter Replying Bot for @botifulbot

  • Interactive Gesture Control:

  • Android App
  • Electricity Bill Calculator (January 2016)
    • Repository Link: https://github.com/VivekBhat/Billing.git
    • Duration: Presently Working on this app
    • Tools used:
      1. Android Studio
      2. gitHub
    • Description: This app was developed for TATA powers. It uses material design, navigation drawer, toast, snackbar and many more new android features. The user enters the date cycle for which he/she wants the electricity bill consumption and the app gets it and also allows the user to convert the electricity consumption units into cost (formula provided by the electricity board).

  • Weather Forecast App (December 2015)

  • Wireless Health Monitoring System (December 2015)

  • Olive Crush (December 2015) (Java App)
    • Repository Link: https://github.com/VivekBhat/Olive-Crush.git
    • Tools used:
      • Java 8
      • Eclipse
      • Terminal
      • GitHub
    • Description: A simple Java application describing various OOP Principles such as Encapsulation, Abstraction, Inheritance and Polymorphism.
  • Java

  • Movie Mantra (July 2015 – August 2015)

  • EXTRA CURRICULAR

    SOCIAL

    My Social Feed

    LinkedIn

    Twitter Feeds

    Instagram Feeds

    CONTACT


    Contact me and I'll get back to you within 24 hours.

    2378 Champion Court

    Raleigh, North Carolina,US

    +1 919-945-6947

    vbhat@ncsu.edu