Jeremy Stanley
Work Experience
- Senior Engineer
Berkeley Data Systems,
Pleasant Grove, UT - December 2006-present
- Maintained and enhanced the Mozy online backup client
- Maintained and debugged a Win32 file system filter driver
- Created user interfaces dynamically with C++ and wxWidgets
- Implemented authentication protocols over TCP
- Implemented a Volume Shadow Copy requestor to perform "live"
backups of SQL Server, Active Directory, and other applications
- Ported user- and kernel-mode code originally targeted at
Windows XP to Windows 2000 and Vista
- Software Developer
AccessData, Lindon UT
- May 2002-December 2006
- Developed software to assist digital forensic evidence
analysis
- Designed and implemented a forensic disk imaging utility
currently used by law enforcement worldwide
- Implemented file system readers for ext2, NTFS, HFS, HFS+, and
UFS
- Debugged and enhanced file system code, adding
features to:
- Undelete files on FAT, NTFS, and ext2
- Recover files from a FAT or NTFS volume that has been
formatted
- Recover deleted partitions
- Decompress compressed NTFS files "on the fly"
- Collect and display file ownership and access rights on
NTFS and HFS+
- Wrote code to reconstruct striped/spanned/RAID5 volumes from
separate disk images (for Windows Dynamic Disks as well as Linux LVM2)
- Designed and implemented an embeddable multithreaded HTTP
server
- Wrote code to parse and display a variety of file formats,
including Internet Explorer history, Microsoft Structured Storage
("Docfile"), thumbs.db, PKZIP, TAR, and Outlook Personal
Storage/Offline Storage
(PST/OST) files
- Software Engineer
Missionary Training Center, Provo UT - Jan 2001-May 2002
- Developed and maintained internal applications in automated
scheduling
- Created and debugged Oracle database applications with VB/ADO
and Delphi
- Migrated legacy code to a new database schema
- Teacher's Assistant (Computer Science Fundamentals)
Brigham Young University - Jan 2000-Dec 2000
- Assisted students with theoretical concepts as well as
hands-on programming
- Evaluated and graded students' tests and projects
- Taught weekly help sessions
- Full-time Missionary
Washington D.C. South Mission, LDS Church - June 1997-June 1999
- Volunteer proselytizing and service projects
- Mission office Computer Specialist: duties included database
management, desktop publishing, digital presentations, and
small network administration
- Technical Support Representative
Packard Bell - June 1995-Sept 1996
- Resolved hardware and software problems via phone
- Assisted novice users
- Authorized service
Education
- B.S. in Computer Science, Brigham Young University, December
2001, summa cum laude
- GPA: 4.0
- Academic scholarship
- Dean's List, College of Physical and Mathematical Sciences,
five semesters
- Experience working in groups
- Relevant courses and associated projects:
- Operating Systems (FAT12 floppy I/O driver, multithreaded
programming, MFC programming with VC++)
- Artificial Intelligence (Q-Learning, theorem proving,
game playing)
- Computer Graphics (Raycasting engine, 3D Phong renderer)
- Physics (3 courses, covering mechanics, electricity and
magnetism, and modern physics)
- Computer Architecture (Simulated RISC CPU)
- Networking (Simplified TCP/IP stack, Web server, Internet
phone)
- Advanced Programming (Web crawler, XML parser)
- Advanced Compilers (object-oriented compiler;
graduate-level course)
Skills
- Programming Languages
- C++, 11 years experience, both Windows and Linux
environments
- APIs: Win32, GDI, MFC, STL,
Boost, POSIX, GTK+, wxWidgets, OpenSSL, SDL, OpenGL
- Visual Basic (with Office Automation and Active Data Objects)
- SQL (Oracle, MySQL, PostgreSQL, SQLite)
- Perl
- Java
- Intel x86 assembly language
Certifications
Interests
- Photography
- Astronomy
- Computer programming as a hobby--some projects I've done on my
own time include:
- An enhanced file copy utility for Windows (allows skipping or
retrying files on error instead of canceling the copy process)
- A hex editor capable of editing arbitrarily large files
- A program to decode Exif data from JPEG files in a
rule-driven manner (new properties can be added without recompiling)
- A few fun graphical programs including a chess game, an
ASCII-art backend for the Simple DirectMedia Library, and a Computer
Coercion Tool that allows you to beat your computer senseless with a
virtual mallet rendered in OpenGL
References
Available upon request. Please contact me for more
information.