Experience + Skills...

Web Development
7+ years

  • Javascript
  • HTML
  • CSS/SCSS
  • PHP
  • Databases
  • Node.js
  • React/Redux
  • Next
  • JSON
  • etc.

Maintaining Front End Websites

Optimizing site performance for SEO, structuring funnels to match click through data, writing fully responsive HTML & CSS (using mobile first approach)

Maintaining Multi-page/SPA web apps

Interacting with server APIs, writing APIs, optimizing APIs, Structuring state/data around business logic for maintainable code & easy feature additions.

Data persistence

Developing correctly structured DB relations (normalizing), molding new APIs to legacy schemas to mitigate code rot, migrating data to new schemas, writing data recovery scripts. Writing and optimizing complex queries (eg SQL, PostGresql).

Leveraging Third Party Software/Services

Creating feature rich live video classes with Daily.co WebRTC service. Full stack payments with stripe (ie UI & API from cart to purhcase). Integrating granular analytics (FB, Google etc) into web UI interactions. Capturing user data and maintaining up-to-date records on Mailchimp. Displaying data in graph format with Chart.js, D3.js, Google Charts.

Missing something? If it has docs, Nate will get it done.

On The Job Improvement

Reading docs*, continuously searching for best practices & optimization tricks.

*Also writing docs.
— Get in touch

Machine Learning & AI
5+ years

  • Neural Networks
  • PyTorch
  • TensorFlow
  • Numpy
  • SVM
  • Linear Algebra
  • Data Engineering

Neural Networks

Nate is very comfortable with deep networks — he understands the iterative tuning process and has a firm grasp of the mathematics that define neural network internals.

In the know...

From leveraging free online courses (eg MIT OCW) to self-study, Nate is constantly improving his undestanding of the theoretical underpinnings of machine learning. On top of that, Nate stays up-to-date on the latest open source technologies for deploying neural networks (eg TensorFlow.js).


Adversarial examples

Above: As part of his passion for machine learning and AI, Nate conducts his own research. Of particular interest to Nate are the vulnerabilities of Neural Networks (eg adversarial examples). In short, this image is a "single shot, optimization free" adversarial example for a single layer Neural Network - ie the forward function is a linear operation followed by Cross-entropy loss function. tgt: desired classification, out: predicted class. [link] (this research is still being conducted).

Some Resources

A* optimality proof [link], vetorized back prop equations derivation [link].

— Get in touch

Programming - General
8+ years

  • OOP
  • Data-structures
  • Algorithms
  • Complexity Analysis
  • Scripting
  • Docker
  • CLI
  • Git

Scripting

Nate has written robust scripts that download and convert hundreds of videos to GIFs while simultaneously synchronizing databases with the generated file names (Python). Additionaly, Nate has recovered live user data from broken databases schemes & migrations (PHP).

Abstraction

Abstraction is the modus operandi for Nate as he writes code - he has seen first hand how terribly code rot accumulates with poor abstractions. This is actually Nate's favorite part of programming - designing and collaborating on powerful abstractions that strategically capture business logic into readable and maintainable code.

Optimization

Nate understands how to leverage datastructures to optimize code runtime - he was honestly suprised to see how often basic structures like sets with O(1) look ups can be used to speed up common tasks like running complex filters/maps over arrays.

Practice

Nate does not assume that he knows everything about programming so his first thoughts are always to research best practices so that he does repeat easily avoidable mistakes.

— Get in touch

Self Improvement
lifelong

  • Self-education
  • Strategic Learning
  • Broad Understanding
  • Research
  • Certifications

Self-study

For Nate, learning is not a means to an end - rather it is an endless passion. From watching free Stanford lectures in the middle of the night to reading about the philosophy of mathematics Nate has a broad understanding of pure and applied sciences. Nate also likes to dive deep into "the abyss*" of mathematics just to witness the wonder of subtlety.

Current self-learning path: Re-read "Artificial Intelligence: A Modern Approach", continue studing Mathematical Logic (Kleene), study Digital Logic & Computer architecture with an emphasis on FPGAs, and more...

What does Nate seek to do with this knowledge? Contribute original research and resources to the AI/Cognitive Science field(s).

Providing Tools

Knowledge of the science is not enough for Nate. Nate constantly analyzes learning and knowledge presentation to see if there are ways that facts/understandings can be distilled into applications/resources that rapidify the knowledge acquistion process (eg writing rigorous and well worded proofs to key results on forums). That is, Nate's attempts at self improvement extend to helping others improve themselves as well.

Strategic Learning

In order to progress towards his goals most optimally, Nate has mastered the art of "strategic learning." This means that Nate knows how to learn the right thing to accomplish his immediate goals & add value to himself as a team member.

*A term borrowed from one of Dr. Osgood's (Stanford) lectures used to describe deep and seemingly arcane mathematics.
— Get in touch
© 2020 Nate Rojas