Nicholas Smirnov

Computer Science & Mathematics Student | Student Researcher

Exploring algorithms and their applications

About Me

Nicholas Smirnov

Welcome!

I'm a Computer Science and Mathematics student at Stony Brook University, passionate about machine learning optimization, computer vision, and algorithm design.

I've worked on exciting projects ranging from climate change analysis at NASA CCRI to animal language processing research at UT Arlington. I love building ML pipelines, implementing cryptographic systems from scratch, and teaching mathematics.

When I'm not coding or researching, you can find me learning new languages, playing the violin, or walking/hiking!

Research Experience

Exploring machine learning, optimization, and data science

Sep 2024 - Present

Research Assistant, DIENS Lab

Stony Brook University

  • Researching zeroth-/first-order optimization methods for ML in non-convex landscapes
  • Implemented PyTorch frameworks for SGD and Adam variants
  • Built mathematical models integrating convex optimization theory with neural network convergence analysis
Mar 2025 - Aug 2025

REU Researcher, Animal Language Processing

UT Arlington

  • Created dataset of 250K+ feline images; trained TensorFlow/PyTorch-based age-classification models
  • Engineered full ML pipeline for 100+ GB of video, extracting 20K+ cat vocalizations with YOLOv8 and PANNs
  • Designed and evaluated acoustic feature sets for developmental vocalization modeling
Jun 2023 - Aug 2023

Research Intern, NASA CCRI

NASA Center for Climate Research Impact

  • Presented climate change analysis at AGU23; studied satellite and GIS imagery
  • Processed 10+ GB environmental data using Python, Pandas, and Google Earth Engine
  • Applied clustering, decision trees, and random forests to predict harmful algal bloom risks

Selected Projects

Here are some of my projects!

⚙️

BASM - Assembly Interpreter

A simple interpreter that executes assembly-like code in Java and Python. Features register operations, conditional jumps, arithmetic operations, and a complete instruction set for low-level programming education.

Java Python Interpreter Assembly
📚

Lit Quiz Bowl

Literature quiz bowl practice tool for memorizing authors and their works. Features flashcard-style questions and immediate feedback for competitive quiz bowl preparation.

JavaScript Education Quiz Literature
💻

JS-Compile

Online JavaScript interpreter and code execution environment. Features real-time code editing and execution. (Note: "js-interpreter" was taken, so I settled for the clearly superior "js-compile" domain.)

JavaScript Web App Code Editor Firebase
🔐

ECIES Cryptosystem

Full implementation of Elliptic Curve Integrated Encryption Scheme over NIST P-256 with HKDF-SHA256 and ChaCha20-Poly1305. Implemented field and elliptic-curve arithmetic from scratch with UKS/KCI resistance.

Python Cryptography Elliptic Curves Security
🐱

Feline Vocalization Analysis

ML pipeline processing 100+ GB of video to extract and analyze 20K+ cat vocalizations. Combined YOLOv8 for detection with PANNs for acoustic feature extraction to model developmental patterns.

PyTorch Computer Vision Audio Processing ML Pipeline
🌍

Algal Bloom Prediction

Climate change analysis using satellite imagery and GIS data. Applied clustering, decision trees, and random forests to predict harmful algal bloom risks. Presented findings at AGU23.

Python Google Earth Engine ML Models Climate Science

Teaching

Lecture notes and educational materials

✍️

Discrete Mathematics Textbook

Working on a comprehensive textbook expanding the lecture notes with additional exercises, solutions, and advanced topics.

15% Complete - Chapters 1-2 finished

Teaching Experience

Jun 2022

Instructor, UC Berkeley Math Circle

Designed and taught lessons on fractals, logic, and mathematics to 20+ elementary students.

Aug 2020 – May 2023

Instructor / Teaching Assistant, School Nova

Taught Roblox Game Development covering coding, scripting, and UX design. Assisted in CS 101/201 and Russian 2/3 courses.

Books & Publications

Educational resources and published works

📘

Calculus Questions

250+ Challenging Problems

A comprehensive collection of over 250 challenging calculus problems designed to test and strengthen your understanding of fundamental concepts. Perfect for students preparing for exams or anyone looking to deepen their calculus mastery.

📚 250+ Problems
🎯 Challenging Questions
📖 Available on Amazon

Get In Touch

Feel free to reach out for research collaborations, questions, or just to connect!