Nathnael (Nati) Bekele

            link    

BA in Computer Science from The University of Chicago, June 2025.

Focusing on Quantum Computing and Computer Systems.


Thesis: Benchmarking sliding and parallel window decoding for CSS qLDPC codes with inner BP-LSD decoders.

Interests

  • Library Development, Backend Development, Computer Systems, Quantum Software Development, HPC, Game Development, Programming Languages

Coursework

  • Intro to Computer Science I/II: Algorithms, OOP     
  • Systems Programming I/II: Assembly, Multithreading, Algorithms, Systems      
  • Theory of Algorithms Algorithms  
  • Scientific Visualization: Graphics, Multithreading, Benchmarking       
  • Data Engineering: Django, SQL      
  • Quantum Computing  
  • Data Visualization: D3  
  • Creative Machines and Innovative Designs  
  • Computer Vision: PyTorch, Various Models    
  • Mathematical Foundations of Machine-Learning    
  • Intro to Data Science I/II: SQL   

Internships

    • Focused on developing testing, linting, and formatting tools, improving the website, and quantum computing effort.
    • Implemented novel measurement and classical control conversion between Pytket and Cirq expanding circuits handled by the Superstaq Compiler.
    • Implemented cancelation for quantum jobs sent to different vendors reducing the cost associated with unwanted large jobs running until completion.
    • Reimplemented non-deterministic algorithms to catch bad user inputs, and avoid test failing for random seeds.
    • Enhanced security of the Superstaq website with password recovery, email validation, and deprecated password hash handling using Flask.
    • Developed custom Pylint plugins to improve code styling consistencies and catch type errors.
    • Implemented Github workflows to add integration testing to a research repository.
  • Golden Peak Media: Generative AI Intern    
    • Focused on recommending and implementing content categorization using AI and Machine Learning tools.
    • Researched new AI tools and their applications in textual analysis, categorization, and taxonomy to recommend solutions for content categorization to executives.
    • Implemented KMeans and Hierarchical clustering of content tags generated using Gensim using Python to recommend a taxonomy for all the communities hosted by the organization.
    • Implemented content summarization software using NLTK and Python to automate content description for editors.

Work Experience

Projects

Completed

  • link  
    • A command line tool for managing multiple local git repo clones simultaneous.
      • List all the repo clones found on the device.
      • View the statuses and commit logs of multiple repos.
      • Call pull and push on multiple repos.
    • Extensively uses the `argparse` and `subprocess` libraries.
    • Has appropriate exit codes for integration with other tests.
    • Uses github workflow for automated release update and publishing on pypi.
  • link  
    • Wikipedia article title guessing web game that includes multiplayer gameplay.
    • Integrated Gensim’s pretrained NLP models for semantic comparison of user input and title for scoring.
    • Utilized NLTK to tokenize and rank a Wikipedia article’s scraped sentences in relative descriptiveness.
    • Designed a Postgres database to store user data including usernames, encrypted passwords, and game scores.
    • Designed Flask Restful Apis to get hints, score guesses, login and register users.
    • Implemented online multiplayer game play using Socket.Io web sockets and NodeJS.
    • Won Best Overall Award at the UChicago Winter Tech Showcase.
  • link  
    • Python dependency license testing/check CLI tool with recursive dependency handling.
    • Existing libraries do not support all python package managers and do not have recursive dependency checks.
    • Able to configure disallowed licenses for depencies to have for which the test will report a failure with an exit code 1.
    • Variety of output formatting modes including grouping by license, alphabetical, and failing only.
  •  
    • Multithreaded Box drive backup desktop software implemented with TKinter and Boxsdk (including OAuth2 features) to automate multi folder and file back up with the use of SHA1 file hashing for version comparison.
    • Uses a local server on a separate thread to host an endpoint that listens for OAuth authentication.
    • Recusively backs up folders creating new files that do not exists in backup, updating files that do exist in the backup by comparing the SHA1 hash.
    • Implements UI and logic directory navigation of remote Box Accounts for selecting the backup directory.
  • link  
    • Tkinter based PC game of the Ethiopian Mancala ruleset.
    • Implements bots of different difficulty that use heuristics for choosing best moves.
    • Allows for midgame bot level changes.
    • Motion animations for bot and player moves.
  •  
    • A Flask web app automating publication tracking of authors from the Biological Sciences Department using Scopus's weekly csv output.
    • Avoids storing any data for IP protection.
  •  
    • Personal portfolio website with dynamic interative features implemented using JavaScript.
    • Implements dynamic filtering by tags.
  •  
    • C program for reporting and removing trailing white spaces from files.
    • Implements CL argument parsing.
    • Options for verbose output detailing where the trailing white spaces were found.

In Progress

  • link
    • Python programming language with Amharic in addition to existing English keywords to help with programming education.
    • Includes keyword translations for builtin keywords and libraries such as `os`, `os.path`, `sys`, `time`, `datetime`, `statistics` `math`, `random`, `requests`, `re`, `json`, `heapq`, and `csv`.
    • Uses JsonCpp for reading keywords from original Json.
    • Generates binaries containing keywords with values used for checking corruption.
    • Implements recursive transpilation of imported Ampy files.
    • Easy scalability for new or changing keywords.
  •  
    • Web app with a React frontend and a Flask backend for generating and editing pixel art for crochet patterns from images.
    • Drafts include custom image analysis implementation that reduces color differences while retaining identifiable regions.
    • Experimenting with different image analysis tools including `Opencv` and `Pillow` for generating simplified images from user input.
    • Support for mouse and touchscreen use when drawing/editing pixel art.
    • Custom `.crochet` file for storing pixel art for future use.
  •  
    • Web game made with React based on a ubiqutous childhood game played in Ethiopia involving connecting dots to form player regions.
    • Includes bots with different strengths developed with JavaScript.
    • Implementing socket for multiplayer gameplay with multiple players.