C.V. (pdf)

Will Johansson

201 Turnbridge Dr., Lewisville, North Carolina 27023

will DOT johansson AT gmail DOT com

Objective A full-time software engineering position; interested in operating systems, server software and application frameworks
Education Rochester Institute of Technology, Rochester, NY
Bachelor of Science, Computer Science, minor in Japanese
Dean's List Winter Quarter 2004-2005, Spring Quarter 2008, Winter Quarter 2008-2009 Graduation expected May 2009
Courses Professional Communications, Computer Organization, Software Engineering, Systems Programming I & II, Programming Language Concepts, Data Communication & Networks, Algorithms, Graph Theory, Operating Systems, CS Theory, XML Tools & Tech, Privacy & Security
Computer skills Languages/APIs: C/C++, C#, Objective-C, MIPS and x86 assembly, Java, Perl, PHP/HTML, SQL, XML, bourne shell, Carbon, Cocoa, .NET, ASP.NET, SharePoint
Operating systems: Mac OS X, UNIX (BSD, Linux, Solaris), Windows
Software: Xcode, Eclipse, Visual Studio, Emacs, Office, MySQL, SQL Server, gcc/gdb, vi, Office SharePoint Server 2007
Work experience June – November 2008: Software engineering intern, OmniSystems, Inc., Vienna, VA
  • Worked on the corporate web site in ASP.NET
  • Worked on the University of the Virgin Islands website with SharePoint 2007 in C# and VB
  • Programmed many custom controls and functionality to extend vanilla SharePoint
  • Worked with Windows and UNIX servers
  • Nagios for the monitoring of our network services
June – August 2007: Software engineering intern, Atacomm, Maple Grove, MN
  • Responsible for bringing back Windows Forms in shape on Mac OS X for Mono (1.2.6)
  • Used C with Carbon API and C# with .NET
  • Worked closely with key maintainers to learn the intricate system
  • First open source contribution
May – August 2006: System Administrator Jr., Netsville, Inc., Rochester, NY
  • Worked with UNIX servers, FreeBSD and Linux
  • Maintained Apache/PHP, MySQL, Nagios, Postfix, Qmail, Courier-IMAP
  • Used Perl and regular expressions extensively for system administration scripting
September 2004 – May 2005: Webmaster, NTID Student Congress, Rochester Institute of Technology, Rochester, NY
  • Maintained a Debian Linux server
  • Wrote the website in PHP with MySQL backend
  • Used standards in order to increase accessibility, important for the Deaf at the school
Projects Systems Programming I:
  • Wrote a CD Jukebox in C, a School record system in x86 assembly
  • Minimized program's footprint with data structures and eliminating redundancy in code
  • Awarded 10 point bonus for efficiency
  • Learned a lot about internals of compilers and generation of binary code
  • Wrote a serial driver for a simple x86 OS and an application for it
  • Wrote a Unix shell with pipes and redirection using documented system calls
Systems Programming II:
  • Wrote an OS from scratch for x86 with a partner
  • Focused on my part, the VESA driver and the windowing toolkit
  • Learned about OS development and debugging
  • Traced and fixed many bugs and learned to make tradeoffs
  • Produced working window manager and applications in 10 weeks
Analysis of Algorithms:
  • Studied minimum spanning trees
  • Implemented Kruskal's and Prim's algorithms in Java
  • Tested it against theoretical runtimes to ensure it matched up
Data Communication & Networks:
  • Designed a remoting API in C++
  • Wrote a simple application to prove functionality
  • Learned how to do custom serialization and remote method invocation in C++
Software Engineering:
  • Coordinated the project and the team members
  • Designed, coded a Java-based Defender style arcade game
  • Learned project management skills and best practices in OO programming
Activities & Interests
NTID Theatre – Lysistrata – Fall/Winter 2005 – Actor

French, German, Japanese, Spanish, traveling, culture, reading, automobiles, aerospace, user interface, linguistics, photography, thrill-seeking, open source

References available upon request.