Christian Cosgrove

Developer, Student at Johns Hopkins University


7+ years of self-taught software development experience involving native applications, computer graphics, robotics, scientific computing, and web technologies.

  • C++, C#, Java, Python
  • Swift
  • OpenGL

Web – frontend

  • JavaScript, HTML, CSS
  • Bootstrap
  • AngularJS

Web – backend

  • NodeJS
  • MongoDB
  • AWS S3, CloudFront, SES, etc.
  • Heroku


Johns Hopkins Class of 2020

Double Major in Physics & Computer Science

All projects below were developed from scratch with minimal use of third-party libraries. The only outside libraries used in my OpenGL projects are GLM, SFML, and SDL.

In all projects that involve numerical analysis (except for Diffusion Monte Carlo), I started from first-principles ODEs and PDEs, implemented numerical schemes from scratch, and then tailored them to the problem at hand. Techniques used include the finite difference method, the finite element method, Verlet integration, and successive over-relaxation.

Infinite-Detail Planet Renderer

September 2014–February 2015

Planet Rendering is a fully-featured procedural planet simulator. I wrote it as an independent research project for a high school computer science class.

To implement infinitely detailed terrain, I developed a custom recursive geometry subdivision algorithm.

It supports multiple planets and includes a gravitational N-body simulator.

Languages & Technologies: C++, OpenGL, SDL

Minecraft Clone

January 2014–February 2014

Block Testing was my first C++ and OpenGL project. It is the precursor to a voxel game like Minecraft. It incorporates an infinite, procedurally generated world.

In writing Block Testing, I taught myself low-level memory management and 3D computer graphics.

The engine features shader effects like parallax mapping, which makes textures "pop."

Languages & Technologies: C++, OpenGL, SFML

… and much more! Contact me: