Avatar

Srikanth Anantharam

Software Practitioner | Lifelong Learner

Beṅgaḷūru, India

contact@srikanth.one

+91 7204 350 429


Soft Skills

Team Player

Collaborator

Communicator

Innovator

Planner

Thinker


Core Competencies

Embedded Systems

Systems Programming

Web Development

Application Development

Automation and Robotics Engineering

Image Processing and Computer Vision

Image Analysis and Pattern Recognition

Artificial Intelligence

Requirements Gathering

Testing and Troubleshooting

DevOps Engineering

Client Relationship Management


Natural Languages

English

Kannada

Hindi

Telugu


Highlights

  • An achievement-driven versatile Software Practitioner with nearly 8 years of rich and extensive experience
  • Skilled at analyzing information system needs, evaluating end-user requirements, designing custom solutions and troubleshooting complex information systems
  • Multi-disciplinary exposure gained by working in a variety of proofs-of-concept & projects related to Sensor Fusion, Robotics, Image Processing, Embedded Systems, Internet of Things, Artificial Intelligence, Test Automation & Functional Safety
  • Proficient at maintaining quality of applications, delivering high-quality customer experience while adhering to the SLAs and work processes
  • Experienced in using various software development methodologies such as Agile, Scrum, Waterfall, etc
  • Capable of recognizing prospects to improve current software by employing innovative problem-solving techniques, optimizing code, and strategically integrating new features
  • Extensive experience in developing applications using various programming languages such as Rust, Python, C++, C and MATLAB; also familiar with C#, HTML, CSS and JavaScript
  • Well versed in using Linux and Windows operating systems; also familiar with macOS
  • Highly skilled in Build / Release / Software Configuration using various DevOps tools such as Visual Studio, Visual Studio Code, Eclipse, PyCharm, MATLAB, Git, GitHub, GitLab, Travis, AppVeyor, Jira, Confluence, Jenkins, MSBuild, CMake, Make, Docker, Kubernetes, AWS, Google Cloud, etc
  • Profound hands-on experience with embedded micro-computers like: NVIDIA Jetson Nano, Intel Movidius NCS, Raspberry Pi, BeagleBoard-xM, Arduino, mbed, 8051
  • Experience with hardware/software interfacing technologies like: UART, I2C, SMBus, SPI, PWM, GPIO
  • Strong work ethic, positive attitude and leadership qualities with ability to work independently and in a team environment
  • Passionate about learning new technologies and keeping up with the latest trends

Industrial Experience

Lead Rust Engineer @ Sasken Technologies (Remote)
  • Developed the ConCal module for managing calibration in an SDV
  • Lead a 4-member team in building scalable caching system to serve S3 objects in more regions than where the primary S3 buckets are located
  • Developed the caching+eviction algorithm and features like database, file handling, http(s) frontend.
Feb 2024 — Present
Freelancer (Remote)
  • DevOps Automation for Embedded build system
Aug 2023 — Feb 2024
Technical Lead @ Saven Nova Technologies, Beṅgaḷūru (Hybrid)
  • Developing hyper-spectral image processing solutions for object detection and analysis
  • Designing and developing advanced algorithms for dot blot detection and analysis for accurate analysis of biological data
  • Performing linear spectral unmixing of dot blot and western blot images ensuring accurate identification and separation of specific signals
  • Preparing and preprocessing image datasets for analysis, ensuring data quality and consistency
  • Conducting rigorous testing and evaluation of image processing algorithms to assess the accuracy, efficiency and robustness
  • Collaborating with Front-End, Back-End and QA Teams; streamlining end-to-end software development process
Aug 2022 — Aug 2023
Senior Analyst @ Emrit Inc, Remote
  • Evaluated and deployed openBalena for optimized management of IoT devices
  • Developed software for implementing secure OTA firmware updates to the IoT fleet using peer-to-peer model with IPFS
  • Streamlined DevOps pipelines for Debian packaging of the OTA software
May 2022 — July 2022
Senior Engineer @ L&T Technology Services, Beṅgaḷūru
  • Developed functional safety software stack for Embedded IoT in C
  • Automated post-silicon validation with Python 3
Mar 2021 — May 2022
Senior Project Engineer @ Wipro Technologies, Beṅgaḷūru
  • Maintained software projects related to multimedia analysis for test automation and Windows OS installation for validation
  • Created GUI, adopting an MVC framework to assist developers in analyzing GNSS logs
  • Developed backend and REST API development for a Chatbot specializing in log analysis
Jun 2019 — Mar 2021
Embedded Software Developer @ UST, Beṅgaḷūru
  • Software design and development with Python.
  • Firmware development with Embedded C/C++.
  • Produced robotics & automation solutions by applying Artificial Intelligence, Machine Learning, Deep Learning, Machine Vision and Embedded Systems.
Dec 2016 — Jun 2019
Industrial Training / Masters' Project Work @ MSDF Group, FMCD, CSIRNAL, Beṅgaḷūru
  • Research, Design & Development on Computer Vision & Miniature Aerial Systems.
  • Published 3 papers.
Aug 2014 — May 2015

Academic / Research Experience

Teaching and Research Assistantship (TaRA) @ Mechanical Engineering Department, The National Institute of Engineering, Maisūru
  • Worked under TEQIP.
  • Collaborated on:
    • Different multidisciplinary research activities,
    • Curriculum development of M.Tech. Industrial Automation and Robotics programme.
May 2014 — May 2015
Research Associate @ Nitte Meenakshi Institute of Technology, Beṅgaḷūru
  • Worked on couple of robotics projects sponsored by GoI through DST & CAIR, DRDO.
  • Contributed to Pick and Place Robot Exhibit project sponsored by IEEE-USA.
  • Mentored undergraduate students & taught fundamental programming concepts.
  • Published 2 papers.
Jul 2012 — Jul 2013
Internship / Bachelors' Project Work @ Nitte Meenakshi Institute of Technology, Beṅgaḷūru
  • Exposure towards multi-disciplinary and cross-disciplinary RDD.
  • RDD on Autonomous Mobile Robotics, Artificial Intelligence & Image Processing.
Jun 2010 — Jun 2012

Education

The National Institute of Engineering, Maisūru

Masters — Industrial Automation and Robotics Technology

2013 — 2015
Nitte Meenakshi Institute of Technology, Beṅgaḷūru

Bachelors — Electrical and Electronics Engineering

2009 — 2012
Sri Jayachamarajendra Government Polytechnic, Beṅgaḷūru

Diploma — Electrical and Electronics Engineering

2006 — 2009
Godwin Public School, Beṅgaḷūru

Secondary School Learning/Leaving Certificate

2005 — 2006
Secured School First Rank

Industrial Projects

Development of ConCal module for SDV

Technologies: Rust
Platform: Android Automotive OS

  • Development of ConCal module within the SDV software stack.
  • The module is responsible for managing the configuration and calibration of the SDV.
Jul 2024 — Oct 2024
Development of an S3 Cache system

Technologies: Rust, Actix, AWS SDK for Rust
Platform: Linux

  • Development of S3 Cache for leading NA based Robo taxi OEM.
  • Developed the caching+eviction algorithm and features like database, file handling, http(s) frontend.
Feb 2024 — Jul 2024
DevOps Automation for Embedded build system

Technologies: Yocto, Jenkins
Platform: Linux

Aug 2023 — Feb 2024
Design and development of dot blot detection and analysis algorithm

Technologies: C++, Python, OpenCV
Platform: macOS, Windows, Linux (Cloud)

  • Developed an image processing algorithm for detection and analysis of dot blots.
Jun 2023 — Aug 2023
Linear spectral unmixing of hyperspectral images from dot blot and western blot

Technologies: Python
Platform: Windows

  • It is common to see bleed-through in hyperspectral images when there is overlap in the emission spectrum of the contributing fluorophores.
  • When not accounted for, this bleed-through will lead to inaccurate analysis results.
  • Developed linear spectral unmixing algorithm for eliminating the bleed-through from a set of images (with up to 4 fluorophores) captured by a widefield microscope.
Aug 2022 — Aug 2023
REST web service development

Technologies: Rust, Actix, Serde
Development Platform: Windows
Target Platform: Linux

  • Independently developed a REST web service in Rust using the FFI for several image processing algorithms written in C/C++.
3 days
Setting up DevOps pipelines for packaging optimized builds of IPFS and IPFS Cluster programs

Technologies: Debian Package, Bash, GitHub Actions, YAML
Development Platform: Linux (AMD64)
Target Platforms: Linux (AMD64, ARM64)
Repository URL: GitHub

  • The software includes three debian packages: IPFS cluster, IPFS leader, IPFS follower.
  • The cluster package is common and can be installed for all the target platforms.
  • The leader and follower are mutually exclusive packages and hence, either of the two can be installed in a given platform.
  • The ARM64 packages require an optimized build of openssl which was achieved through cross-compilation.
6 days
Functional safety software stack development

Technologies: C
Development Platform: Linux
Target Platforms: ACRN, Yocto

  • Independently developed the temperature monitoring module of the software stack:
    • The module uses a timer to run a handler periodically every 1 millisecond.
    • The handler reads the temperature values using MSR & MMIO read.
    • Then it sends out the values to the functional safety enabling hardware over the SPI protocol.
  • Developed code for performing both correctable & uncorrectable error injections on the ECC memory.
  • Benchmarking (with & without ECC enabled) of the RAM reading / writing speeds of the target using open-source tools.
Jun 2021 — May 2022
Post-silicon Validation Automation

Technologies: Python, PowerShell
Development Platform: Windows
Target Platforms: Windows, Linux

  • Automation of validation testcases using a proprietary test automation framework.
  • Worked actively on Crossproduct and PRM domains.
  • Working as a consultant on software design & development and the framework know-how.
Mar 2021 — May 2022
Backend & REST API development for Chatbot that performs log analysis

Technologies: Python, Flask, mongoDB (PyMongo), AxonIQ
Development Platform: Windows
Target Platform: Linux

  • A thermal csv log & a string containing the issue is obtained from the frontend using as POST request.
  • Developed the core business logic for reading and parsing the thermal csv logs.
  • Developed the code for dumping the parsed JSON log data into mongoDB & Axon repository for maintaining a history.
  • Performs analysis on the JSON data to gain valuable insights on the issue.
  • Suggests a solution as the response based on the analysis.
3 months
Maintenance of Windows OS installation tool

Technologies: C#, .NET Framework, .NET Core, PowerShell
Platform: Windows

  • The legacy tool enables manual and automated installation of Windows using:
    • Command-line mode (locally or using network).
    • Graphical mode (locally or using network).
    • Thumb drive mode (locally or using network).
    • PXE mode (using network).
  • Worked on maintenance and bug fixing of the tool.
  • Also worked on development of the tool involving:
    • Enabling automated Windows installation while using the thumb drive mode.
    • Porting the tool from .NET Framework 4 to .NET Core.
16 months
Maintenance of multimedia analysis tool

Technologies: Python, Flask
Platform: Windows

  • The legacy tool enables analysis of audio and video signals using a dedicated embedded hardware.
  • The tool is useful for automatically identifying and logging audio and video issues resulting from hardware/firmware issues like:
    • Absence of an audio signal.
    • Drop-out of audio frames.
    • Synchronization of audio and video.
    • Video framerate drops.
    • Absence of video signal.
    • Unwanted screen rotation.
5 months
GNSS Log Analysis Framework (GLAF)

Technologies: Python, pandas, PySide2, NSIS, YAML, MVC
Platform: Windows

  • Involved developing of a GUI for assisting the developer in debugging the issues from GNSS logs.
  • The GUI allows the user to import, analyze, annotate and visualize csv logs.
  • Developed the complete frontend, backend and the core business logic using MVC.
5 months
ThingG

Technologies: Python, PostgreSQL, Flask, scikit-learn, LoRa, Arduino, MQTT
Development & Host Platform: Linux
Target Platform: ESP-32

  • ThingG is a system for localization of assets within an indoor environment.
  • The asset to be tracked is attached a small LoRa transceiver connected to an ESP-32 powered by a battery expected to power it for an year.
  • The indoor environment has 3 LoRa transceivers each connected to an ESP-32 acting as gateways located in known positions. They are connected to the server over MQTT.
  • The asset attached LoRa transceiver runs an embedded software to interface the LoRa and continuosly transmits heartbeat signals to the gateways.
  • The gateways run an embedded software that measures the strength (RSSI) of the signals received from the asset and sends the data over MQTT to the server.
  • The server runs a machine learning model that listens to the data from the server and converts the data into location of the asset.
  • The location of the asset is then visualized on an indigenously developed dashboard allowing the user to track it.
  • The project stood at the 2nd place in a developer hackathon organized by the company.
4 months
iPLMS

Technologies: Python, PostgreSQL, OpenCV, scikit-learn, MQTT
Development & Host Platform: Linux
Target Platform: Raspberry Pi

  • iPLMS is a system for aiding users to find a vacant slot in a parking lot.
  • The parking lot is equipped with an overhead camera connected to an edge computing device (Raspberry Pi).
  • The device continuously captures the image of the parking lot, segments the slots and runs it through a machine learning model.
  • The machine learning model then classifies each slot as being occupied or vacant and sends it over MQTT to the server.
  • The server listens to the data from the server and visualizes the occupancy data on a dashboard.
6 months
USB Device Testing Robot

Technologies: Embedded C++, Arduino, Grbl, Python, OpenCV, PySide2, scikit-learn
Development & Host Platform: Linux
Target Platform: Arduino

  • The robot is a 2d cartesian with the arm having a male USB end effector whose other side is connected to a computer.
  • The robot also has a stationary panel with 5 numbered female USB connectors which can be connected to devices.
  • The aim is to allow the computer to plug to multiple devices one by one and perform some testing on each device.
  • The robot is run by an Arduino running the Grbl firmware and also equipped with a camera mounted on the moving arm.
  • The camera helps in identification of the female connector and provides feedback for safe plugging and unplugging of the USB connector.
  • There is a GUI developed which allows selection of a device, plugging, unplugging and also displays the camera's vision.
10 months
Deep learning based PCB asset classification and liveness detection robot

Technologies: Embedded C++, PostgreSQL, Arduino, Python, OpenCV, Flask, TensorFlow
Development & Host Platform: Linux
Target Platforms: ESP-32, Raspberry Pi Zero

  • The robot is a 1d cartesian with a shuttle that moves along a track with a station on the one end.
  • The shuttle carries a Raspberry Pi Zero with a mounted camera and stops at predefined spots along the track.
  • The whole system is mounted on the top of a long desk which hosts the PCB assets.
  • The movement of the shuttle is controlled by an ESP-32 microcontroller.
  • When the shuttle stops, the camera captures an image of the desk and sends it along with the liveness information over Wi-Fi to the server.
  • The server runs the image through a deep learning model to classify the PCB asset if visible in the image.
  • The PCB kind and the liveness information is then stored to the database for future usage.
12 months
Implementation and Validation of Vision-based Ground Target Geo-Localization for Miniature Aerial System (Masters' project work)

Technologies: MATLAB, C#, Arduino, VMWare Workstation Player
Development Platform: Windows
Target Platforms: ArduPilotMega

The project work presented a computer vision based algorithm for accurate geo-localization of a ground target from an aerial image captured by the Miniature Aerial System (MAS).

  • The user identifies and selects the ground target in the image taken by the camera on board Miniature Aerial Vehicle (MAV).
  • A computer vision based algorithm is developed for accurate geo-localization of a ground target from the aerial image using: MAV pose, Gimbal pose and Camera parameters.
  • A method for generating synthetic aerial image for any given pose configuration of the MAV, the Gimbal and the Camera is developed.
  • Implemented on MATLAB and validated with a custom build of FlightGear Flight Simulator.
7.5 months
PhotoScenery for Realistic Scene Generation and Visualization in FlightGear (Masters' mini project)

Technologies: OpenSceneGraph, Visual Studio, Bash, Python, CMake, Git, C++
Platform: Windows, Linux

The project involved generation of photo realistic scenery and visualization of a landscape in the FlightGear Flight Simulator.

  • The software runs on Windows as well as Linux.
  • Built and installed FlightGear Flight Simulator from source using CMake.
  • Derived a methodology for the generation of PhotoScenery and integrated with FlightGear.
  • Performed Hardware-In-Loop Simulation (HILS) for Miniature Aerial System (MAS) control algorithm.
2 months
Design and Development of Robot Mechanisms, Vision and Control Algorithms

Technologies: MATLAB, Embedded Linux, C/C++, SDL, GStreamer, Makefile, ARM NEON SIMD, DSP/BIOS RTOS
Development & Host Platform: Linux
Target Platforms: BeagleBoard-xM

The project was sponsored by Department of Science and Technology (DST), Government of India (GoI).

  • Designed and integrated embedded Linux platform on BeagleBoard-xM SBC using Ångström.
  • Designed and developed a software framework in C++ for implementing image processing & computer vision applications on BeagleBoard-xM.
  • Developed image processing kernels in Embedded C for TI DSP C64x+ for 7 target tracking algorithms and C intrinsics code for ARM NEON SIMD.
  • Reduced algorithm execution time by a factor of up to 4.6.
  • Optimized the target tracking algorithms for real-time (30fps) performance on BeagleBoard-xM.
13 months
māhiya: Development of a Real Time Human Tracking Capability on a Mobile Platform

Technologies: MATLAB, Embedded C/C++, EAGLE PCB Design, C/C++, OpenCV, Eclipse
Development & Host Platform: Linux
Target Platforms: AVR

The project was sponsored by Centre for Artificial Intelligence and Robotics (CAIR), Defence Research and Development Organization (DRDO), Government of India (GoI).

  • Developed image-based visual servo controller for human following applications in C/C++.
  • Developed kinematic pose-to-pose controller for differential drive mobile robot.
  • Developed and optimized 7 human tracking algorithms for real-time (30fps) performance.
  • Developed the interface for a sensor ring of 12 ultrasound range finders in Embedded C.
  • Integrated the tracking algorithms with the controller for human following applications.
10.5 months

Academic / Research Projects

Autonomous Mobile Robot Control, Localization and Path Planning (Bachelors' project work)

Technologies: MATLAB, Embedded C
Development Platform: Windows
Target Platform: AVR

  • Developed a 2D framework in MATLAB for simulating a differential drive mobile robot.
  • The autonomous robot must navigate to any desired goal location in a known static indoor environment by taking an optimal and feasible path.
  • Ultrasonic range finders perceive the environment and the robot localizes using extended Kalman filter (EKF).
  • An intelligent path planning algorithm computes the path to be traversed.
  • The robot motion control is achieved by using a kinematics based controller.
16 months
Soft-starter: Automatic star-delta starter using microcontroller (Diploma project work)

Platform: 8051

  • The starter is necessary for starting a three phase induction motor.
  • The project work involved development of an electronic starter used for starting a 230V 50A induction motor based on Atmel AT89S51 microcontroller.
  • The motor is powered on in the start configuration and a timer is used to switch the motor configuration from star to delta after an adjustable time delay.
  • A single phase prevention mechanism is also implemented to protect the motor in case of faults.
4 months

Personal / Open Source Projects

Uraga

Technologies: Rust
Platforms: Windows, Linux, macOS
An intuitive modern programming language in its early stages that aims to be both interpreted and compiled.

Work in progress
reSTful

Technologies: Rust
Platforms: Windows, Linux, macOS
An intuitive new markup language in its very early stages.

Work in progress
translitera

Technologies: Python, JSON
A python package to phonetically transliterate text from Kannaḍa script to English / Latin characters.

PyPI page | GitHub link

1 week
SerialTerminal

Technologies: Python, PyQt, YAML
A simple Serial Terminal application written in PyQt.

GitHub link

1 week

Publications

Synthetic Aerial Image Generation for Miniature Aerial System
Srikanth A, L P Prathyusha, VPS Naidu, L Krishnamurthy

IEEE ITACT, AIT, Beṅgaḷūru. [link 1] [link 2]

Dec 2015
MAS Simulator: A Laboratory Set Up
Indhu B, Srikanth A, N Sivakumaran, VPS Naidu

CCIP, JSSATE, NOIDA. [link 1] [link 2]

Mar 2015
Photoscenery for Realistic Scene Generation and Visualization in FlightGear: A Tutorial
, Indhu B, L Krishnamurthy, VPS Naidu

ICETES, MACE, Kēraḷa.

IJAREEIE, Vol. 3, Special Issue 5, p. 577-582. [link 1] [link 2]

Dec 2014
Robotics Research at NMIT
Jharna Majumdar, Sunil Kumar H N, Praveen Kumar Jain R, Venkatesh G M, Srikanth A, Sandeep Kumar Malu

ITC, Beṅgaḷūru.

Jul 2013
Development, Implementation and Optimization of Real Time Target Tracking Algorithms on BeagleBoard-xM
Srikanth A

[link 1] [link 2]

2012 — 2013
Vision based Interactive Robotic Exhibits for Museums
Jharna Majumdar, Ramesh Babu, Sunil Kumar H S, Manjunath H N, Praveen K Jain, Venkatesh G M, Srikanth A, Gurinder S Gill

IEEE Exhibits 2012, Braj Mohan Birla Science Centre, Haidarābād. [link 1] [link 2]

Dec 2012

Certifications

Architecting with Google Kubernetes Engine Specialization from Coursera — Google
Aug 2022
Software Architecture Foundations by LinkedIn Learning
Feb 2022
Software Architecture: From Developer to Architect by LinkedIn Learning
Feb 2022
Programming Foundations: Test Driven Development by LinkedIn Learning
Feb 2022
Advanced Design Patterns: Design Principles by LinkedIn Learning
Jan 2022
Programming Foundations: Object Oriented Design by LinkedIn Learning
Dec 2021
Rust Essential Training from LinkedIn Learning
Dec 2021
C++ Best Practices for Developers from LinkedIn Learning
Dec 2021
Rewriting Git History from Pluralsight
Apr 2021
Working with Git Branches from Pluralsight
Apr 2021
Mastering Git from Pluralsight
Jul 2017
How Git Works from Pluralsight
Jun 2017
Python Desktop Application Development from Pluralsight
Jun 2017
JavaScript Basics from Solo Learn
Jan 2016
HTML Fundamentals from Solo Learn
Sep 2015
SQL Fundamentals from Solo Learn
Sep 2015
Introduction to Linux from edX — The Linux Foundation
Sep 2015
Internals of PC from Escube IT Systems Solutions, Beṅgaḷūru
Diploma in Office Management Application from MVS Computer Institute, Yalahaṅka