About Jay Knight

Silhouette of coder at keyboard

After getting my BS and Masters degrees from Carnegie Mellon, I was hired as a software engineer to build web applications, and I'm still employed as a software developer today.

Throughout my professional career I've trained and taught youth how to code. From teaching elementary kids how to program in Scratch, to coaching a middle school robotics team, to tutoring college computer science majors...I have helped learners of various ages and various skill sets.

I am truly passionate about the field of software development. I code for work and for fun. But what I enjoy more than coding is sharing my craft with others, and helping them become great coders.

My areas of knowledge include:

  • AP Computer Science Principles
  • AP Computer Science A
  • Java (IntelliJ, Eclipse, NetBeans, BlueJ)
  • Python (PyCharm, Idle)
  • Visual Studio Code (VS Code)
  • MySQL, MariaDB, PostGreSQL, SQL Server
  • ERD (Entity Relationship Diagrams)
  • Database normalization (1NF - 5NF)
  • BCNF (Boyce-Codd Normal Form)
  • Git (Bash (command line), GitHub Desktop)
  • Apache Tomcat (Servlets, JSP, Spring Boot)
  • XAMPP / WAMP / MAMP
  • PHP
  • Linux (Ubuntu, Bash, command line)
  • Web Development (HTML, CSS, Javascript)