![](rsc/hero-new.jpg)
Hi, my name is Alex Petrusca
And I like coding.
I am passionate about
Skills
My relevant computer programming skills. High ratings correspond to "very comfortable with" and low ratings correspond to "not very comfortable with."
Other
Experience with x86 Assembly (NASM), NumPy, Git, Apache Maven, LaTeX and Unix/Linux.Java experience includes backend development and testing with Spring, JUnit, and Selenium.
JavaScript experience includes frontend development with AngularJS, JQuery, and CoffeeScript.
![](rsc/parallax/ucsc7-min.jpg)
Experience
Full-Stack Software Engineer at DataVisor
2019 - Present | MOUNTAIN VIEW, CA
- Built tools that allow customers to monitor, analyze, and take action against fraudulent activity in real time using Angular, React, and Node.js
- Created interactive heat maps, graphs, and dashboards to visualize fraud using D3.js
- Led the technical design and development of an integration testing framework based on Selenium that was used by the UI and QA team to write 200+ test cases
- Implemented a framework in Java to query Prometheus and generate snapshots of Grafana dashboards on-demand for secure external display to customers
- Maintained build script, Dockerfile, and Helm config for frontend Node.js server
NLP Undergraduate Researcher at UCSC
2019 | SANTA CRUZ, CA
- Implemented a baseline LSTM sequence-to-sequence model with attention mechanism for neural story generation using Pytorch (Test Perplexity: 20.97)
- Wrote evaluation metrics in Python to gauge inter- and intra-story repetition
- Worked with PhD researcher to help write, peer-review, and submit research paper
- Paper accepted to AACL 2020 and INLG 2020 (Paper Link)
Software Engineer Intern at Paxata
2018 | REDWOOD CITY, CA
- Enforced expected behavior through 20+ bug fixes and 10+ integration tests
- Fixed a widespread performance issue related to lack of parity between frontend and backend object representations
- Fixed a performance issue with dataset version loading related to multiple unnecessary server calls from the frontend
Software Developer at Gesher Labs
2018 | REDWOOD CITY, CA
- Build internal tools for the 50+ Gesher Group members to use
- Built a Slack bot to help facilitate interviews between new and veteran members of Gesher
- Developed a web-scraping application for UCSC cafeterias and presented it to the members of Gesher
Full-Stack Software Engineer Intern at Paxata
2017 | REDWOOD CITY, CA
- Developed a landing page to expedite common workflows using Agile methodology
- Designed Scala APIs and AngularJS interfaces that query MongoDB for metadata on prioritized projects (NoSQL)
- Wrote JUnit tests and Selenium integration tests for the new landing page
![](rsc/parallax/ucsc6-min.jpg)
Education
![](rsc/education/sharp2.jpg)
![](rsc/education/uc-logo.png)
![](rsc/education/sharp.jpg)
UNIVERSITY OF CALIFORNIA, SANTA CRUZ
Computer Science B.S., 2016 - 2019
- 7x Dean's HonorsReceived over 3 years for "outstanding academic achievement"
Relevant Coursework
- looks_one CMPS 128: Distributed ComputingAvailable, fault-tolerant distributed key-value store that provides causal and eventual consistency with sharding and replication.
Topics: Distributed communication, naming, synchronization, consistency and replication, fault tolerance, security, parallelism and scaleup, and peer-to-peer systems. - looks_two CMPS 109: Advanced ProgrammingDistributed parallel password cracker for UNIX salted passphrases.
Reliable distributed parallel MSD Radix sorter.
Configurable test harness for geometric bounds checking.
Topics: Multithreading, distributed computing, TCP, UDP, Berkeley socket communication, and object-oriented design. Focus on C++. - looks_3 CMPS 142: Machine Learning and Data MiningTopics: Classification learning, density estimation and Bayesian learning regression, online learning, neural networks, decision trees, boosting, and nearest neighbor techniques.
- looks_4 CMPS 102: Introduction to Analysis of AlgorithmsTopics: Divide-and-conquer, greedy algorithms, dynamic programming, min-cut max-flow, Big-O runtime analysis, algorithmic proof of correctness, and LaTeX.
- looks_5 CMPS 104A: Fundamentals of Compiler DesignFully working compiler with Preprocessor (CPP), Lexer (Flex), Parser (Bison), symbol table and type checker, and intermediate code generator.
Topics: Compiler structure, symbol tables, regular expressions and languages, finite automata, lexical analysis, context-free languages, LL(1), recursive descent, LALR(1), and LR(1) parsing; and attribute grammars as a model of syntax-directed translation.
![](rsc/parallax/ucsc10.jpg)
close
Web-compatible minimax AI for Checkers
close
Simple minimax AI for Connect Four View on GitHub
close
MNIST digit classifier using fully connected Neural Network View on GitHub
close
Modernized Breakout game written using JavaFX View on GitHub
close
Harmless x86 computer virus for Windows OS View on GitHub
close
Cylindrical spline drawer written using WebGL
![](rsc/parallax/ucsc1-min.jpg)
Resume
- Read Resume
![](rsc/me.jpg)
ABOUT ME
I am a software engineer specializing in backend/full-stack work. I like building passion projects from scratch and learning new things to get my projects off the ground. Over five+ years of programming, I have picked up experience working with Java, Scala, JavaScript, Python and C/C++ on projects ranging from video games and music visualizers to deep neural networks and distributed key-value stores.