Languages

Java was the first industrial language I learned, and I was first introduced to it in January 2019 in my Fundamentals of Computer Science 2 class. My knowledge of Java grew significantly throughout my Object Oriented Design class the following year.

I am self taught in HTML and CSS, however my knowledge has been expanded by my first co-op at Boston Globe Media as an Associate Web Developer. Creating this site was my first exposure to the languages, and I have continued to expand this knowledge as I add more and more to this site.
Some projects include:

PHP is the newest language in my skill set and the first scripting language I have learned. I would consider myself proficient in PHP, however I still have much to learn.
Some projects include:

Version Control

I have a solid understanding of git, both at the command line as well as in a graphical user interface. I also have experience with the workflow and with the numerous commands/steps taken in this system. This website is hosted on GitHub, and all of the source code is available via this platform.

I use Subversion everyday on the job at Boston Globe Media, and I understand the fundamental flow and structure of this version control system. Knowledge of more than one VCS has allowed me to draw distinctions between the two, which has solidified my understanding of both systems.

Relevant Coursework

Project based class that served as an introductory to industry level object oriented software development. The aim was to give students experience with designing and writing large scale projects and adapting to changing client expectations. Projects lasted 4-6 weeks, with each week introducing a new expectation that needed to be integrated into the existing code. The class covered basic topics of object oriented programming: abstraction, encapsulation, inheritance, and polymorphism. Design patterns were also covered.

Introductory classes to writing and designing programs. The classes relied heavily on pair-programming, and it placed a main emphasis on designing clean code, meaning code that is readable, concise, modular, and well-documented. This class also introduced the idea of performance in terms of memory and runtime analysis.

This class explored formal logic and its relation to functions, and how we could prove certain characteristics, such as termination, of the programs we wrote. Some basic topics covered were formal proofs, propositional logic, and induction.

Introductory course to the mathematical structures and techniques present in the field of computer science. Some major topics included counting, probability, searching and sorting algorithms, big O analysis, formal proofs, trees and graphs, modular arithmetic, binary, etc.

Libraries

I have experience using the Bootstrap front-end library, mainly through the process of creating this site.

Development Environments

For Java projects, this is my preferred IDE, due to the sleek straighforward user interface and the easy-to-use debugger. I have not utilized the functionality of this software to the fullest, and there is still much to learn.

I use this IDE for all of my HTML + CSS + Javascript projects, including this website. I especially like the easy-to-use git commands integrated into the user interface for committing changes to a local repository. As with IntelliJ, I still have much to learn when it comes to using this software to its full potential.

I have moderate experience using eclipse after using it for a class for a semester (Fundamentals of Computer Science II). However, I am less family with the features that are not directly related to the code text editor.

Adobe Creative Suite

I have intermediate experience with this UX/UI design/prototyping tool after creating several mockups of websites for the design class 5D fundamentals.

I have created many graphic design projects in this software and am very familiar with the tools. These projects can be seen on the Graphic Design page.