Karthik Shivashankar

AI and Software Engineering Researcher

Oslo, Norway

Summary

I am an AI Researcher specializing in the practical application of machine learning to solve critical software engineering challenges. My work focuses on automating software quality assurance by building, validating, and deploying specialized tools that analyze both source code and developer communication. I bridge the gap between academic research and industry needs by creating open-source solutions that detect technical debt, code smells, and ML-specific anti-patterns, enabling teams to build more maintainable and reliable software.

Education

Philosophiae Doctor (PhD) in Informatics

University of Oslo, Norway | Submitted 2025

Thesis: The Dual Role of Machine Learning in Technical Debt Management: Applying Machine Learning for Identification While Analyzing Debt within ML Systems.

MSc in Electronics Engineering (EuroMasters, with Distinction)

University of Surrey, Guildford, UK | 2017 – 2019

Dissertation (Distinction): Deep Learning for 4D Augmented Reality. Developed a compact representation of 4D video sequences using 3D Deep Learning models (VAEs) to enable efficient rendering on Mixed Reality platforms like HoloLens.

Research Experience

PhD Researcher

University of Oslo, Norway | 2021 – 2025

My research involved the end-to-end development of AI-driven tools to automate and enhance software quality analysis.

  • Automated NLP-based Quality Analysis: Engineered BEACon-TD, a novel framework using fine-tuned transformer models to classify 13 distinct types of technical debt directly from unstructured text in issue trackers. This work was operationalized in the open-source TD-Suite framework.
  • ML-Specific Code Quality & Maintainability: Addressed the lack of specialized quality tools for AI systems by building MLScent, a static analyzer that detects 76 unique ML-specific anti-patterns in frameworks like TensorFlow and PyTorch. This was complemented by a comprehensive systematic literature review to consolidate knowledge on maintainability in ML.
  • Advanced Python Code Smell Detection: To overcome the limitations of existing linters, I developed PyExamine, a multi-level static analysis tool for Python that identifies 49 unique metrics covering code, structural, and architectural smells.
  • Enhanced Code Maintainability with LLMs: Investigated the use of fine-tuned Large Language Models to proactively refactor Python code, demonstrating measurable improvements in objective maintainability metrics while preserving functionality.

Industry Experience

AI Engineer

Fantastec Sports Technologies, London, UK | June 2018 - Oct 2011

  • Automated digital asset creation by architecting a computer vision pipeline using Python, OpenCV, and Dlib, significantly reducing manual production time and costs.
  • Constructed a scalable data pipeline on AWS with Apache Spark and Scikit-Learn to analyze user behavior, enabling a predictive in-app asset recommendation system.
  • Designed a Monte Carlo simulation in MATLAB to forecast game dynamics for a blockchain application, delivering key data that guided product strategy and feature development.

Technical Skills

Languages

Python SQL MATLAB

AI/ML Frameworks

PyTorch Scikit-learn Hugging Face Pandas OpenCV

Core Competencies

Natural Language Processing (NLP) Deep Learning Static Code Analysis Empirical Software Engineering MLOps Technical Debt Management

Tools & Platforms

Git Docker CI/CD AWS Apache Spark

Key Publications & Open Source Projects

A full list of publications is available on my Google Scholar profile.

Maintainability and Scalability In Machine Learning: Challenges and Solutions | ACM Computing Surveys, 2025

PyExamine: A Comprehensive, Un-Opinionated Smell Detection Tool for Python | MSR 2025 [GitHub]

MLScent: A tool for Anti-pattern detection in ML projects | CAIN 2025 [GitHub]

BEACon-TD: Classifying Technical Debt and its types across diverse software projects issues using transformers | Journal of Systems and Software, 2025

TD-Suite: All Batteries Included Framework for Technical Debt Classification | Submitted to SEAA 2025 [GitHub]

Datasets & Models

Explore trained models and datasets on my Hugging Face Profile.