Mickey Kawick
NETWORK core Systems engineer
abjdia@r.postjobfree.com
San Marcos, CA 92069
Profile
Lead software engineer and architect. Projects include: reconnaissance aircraft, embedded hardware, and 24 shipped
games shipping titles such as Age of Empires, Madden, Freelancer, and Planetside 2. Managed teams up to 13, written
articles, and authored a game programming book. Currently focused on an indie title for SDL / OpenGL and has
worked on games for HTML5/Canvas. Background emphasizes C++, HTML5, image processing, networking, tools,
performance, and optimization. Extensive management training team and leadership experience.
Skills
● Development Languages: C++, C#, Lua, Assembly, HTML5, Javascript, SQL, Python. Some development in
Objective-C, Android Java
● IDE: Visual Studio, Code::Blocks, Chrome, Firebug, GNU, XCode, ADS
● Hardware: x86, Android, other hardware
● Embedded: Linux, ThreadX, QNX
● Technologies: Graphics, GUI, 3D graphics, audio, networking, AI, systems, low-level programming,
optimization, debugging, animation, systems architecture
● Management style: Coaching and Participative. Theme: Big carrots, small sticks. Involve team in key
decisions. Inspire team members to greatness, cross train.
● Production style: Scrum and Agile-lite. Theme: clear communication and scheduling, cross-team coordination,
setting and meeting milestones
● Human Resources: Good at attracting, evaluating, and recruiting new team members, orchestrating
development-team strategy, creating apprenticeship programs, and adjudicating disputes or other contract
issues. Development teams are groups of workers who need coordination to share knowledge, resources, and
manpower.
Experience
Sr Network Programmer Games programmer, Playdek Mar 2013- Present
Server network architecture and client API on multiple OSs (Windows, Linux, Android, iOs, PS Vita, Unity) with an
emphasis on security and performance. Load-balanced, with a gateway and many service, performance throughput
measured (hammered) and performance became exceptional. DLC (Graphics audio, ads, etc) content delivery system
built for in-game content delivery: not external apps here. Unification of multiple-servers into a coherent
shared-responsibility and division of labor pattern with super easy configuration. Deployment on multiple platforms
including Windows and Linux.
Leadership involving planning, scheduling, presentations, integration strategies, customer facing requirements
capture, scrum, reporting, etc.
Advanced C++ 11 / Vis Studio / gcc / XCode / Objective C / C# + CLI
Python, Code::Blocks, Boost, PHP, Javascript/HTML5/CSS3, JQuery.UI, XAMPP,
Unity
libevent - scalable, low-latency networking
MySql - data modeling, table setup, admin, data replication and warehousing
security - protected networks, salted keys for login, multiple redundancy, load balancing, dns, encryption
iOS / Android / Windows (XP / 7 / Server2003) cross-platform development
Performance / optimization. Lightning fast networking (<150 ms RT latency for most things).
linux (Debian) deployment, updates, installs, Apache, etc.
Parallel computing
Automated email (SMTP), account management, purchasing, and other network services.
Amazon/ Google/ Apple HTTPS APIs (Curl, REST)
Shell scripting: bash, batch, Python
Number theory / Abstract algebra for account number generation, hash keys, security
Localization support
Features: Games, login, tournaments, dynamic asset management, tools, chat, email, notifications, communications,
purchasing, security, load balancing, anti-hacker techniques
Details: The architecture is divided into three tiers. The front end is high risk so it has no exposure to internal data,
user accounts, and the like. It has high-availability and high-performance tested with hundreds of users logging in per
minute. It is also load balanced, and highly resistant to hacking. It communications with clients using ProtoA
networking protocol. The second tier is core systems including login, chat, purchasing, contact mgmt, notifications,
user statistics, tournaments, etc and communicates with the front tier using ProtoB networking protocol on a different
piece of hardware. It is not externally accessible. It also has high availability and due to it's isolation, is unhackable. It
has indirect access to user data. The third tier sits on a another box and contains game data and game functionality.
This type of architecture is common in MMOs but the communications, and a few other features make it more secure
than most MMOs.
Shipped 6 titles and 5 expansions.
General misbehavior.
Board games
Personal: Running, Calculus tutoring, university coursework in German, recording personal music pieces, contribution
to online C++ groups, Oct-tree work, linux-builds and installs.
Lead Software Engineer REST Architect, M-Go Sept 2012 - Mar 2013
Graphics programming including shaders built for rendering real-time video streaming. Real-time image processing.
Problem solver on massively-scalable, high-speed networks involving video streaming. Memory mgmt, performance
analysis, and numerous stabilization issues solved. Video playback over differing networks using various DRM
methods. Systems/tools/networking programmer dealing with HTTP, memory, crash bugs, and solving the bugs that
other people had given up on. Shipped working M-Go streaming software on several platforms.
C++ / Javascript / Python
HTML5 / CSS3
Windows / Unix
H.264, Widevine, Ogg-Video
Other fun libraries include, Yahoo Widgets, Backbone.js, JQuery, Underscore.js, Scaleform, Unity
Hardware on which I worked:
* High-def TVs
* Routers( Cisco, etc )
* PS3 and X360
Coursework taught: C++
Shipped: Visio movie player using Widevine
Personal: Business plans, building company, building engines, consulting in Javascript, audio work, soccer, Running
club, team building, project mgmt
Sr. Gameplay Engineer Architect Network Engineer, Sony (Electronics/Online) July 2010 – Sept 2012
Worked for two divisions:
Online:
Gameplay and systems programming developing Planetside 2. C++ for primary development, Lua for glue code
talking to UI and scripting, Javascript for some tools and test utils.
Key features worked on: Facilities, Rewards, Marketplace, Thrustpads, Trigger Volumes, UI, Packets, Threading, Chat,
Guilds, Combat, Player progression (Xp, Certs, etc), networking, chat, group management, maps.
Additional work: Tools development: prototypes, demos, production tools
Misc: Oracle, Networking, Serialization, Physics
Shipped: Planetside 2
Electronics:
HTML5 technologies (CSS3, canvas, animation, etc). Systems architecture and team lead developing in ChromeOS.
Graphics, GUI, and systems programming and technical leadership. Designed combat systems, AI, and networking
systems as well as systems architecture. Built the following systems: SQLite DB layer, threading/concurrency, WebGL,
WebSockets, Audio, Video. Web workers for background processing. Designed our systems for security and
encryption. Performance-related work and optimization. Team lead for scrum, product leadership, task assignment,
team motivation, and bad jokes. Graphics programmer for laptops. Image processing, shaders, hardware rendered
app. Linux, Apache.
Gameplay Engineer Network Engineer Systems Architect, Carbine Studios, Aliso Viejo, CA Apr 09 - Jun 10
Engineer on MMO project. Implemented various systems-level programming using C++, Lua, DirectX, SQL Server,
and TCP/IP. Areas worked were networking, graphics, gameplay, and database. Entirely PC and Mac development.
Tech studied included C#, Lisp, MySql, Linux, Project Management, DiffEq, and ComplexVariables.
Game: Wildstar
Part-time university professor in various programming areas. Instructor at the Art Institute.
Team Lead, Action Pants, Vancouver, CA Apr 07-Jan 09
Tools lead programmer and Sr architect. Applied scrum to reform the team into a powerhouse. Implemented core
technologies and unit tests using C++, C#, and Lua. Worked in areas as diverse as reflection, gameplay, animation,
audio, tools, and low-level systems. Ran team of 4. Tools development using C# for XBox360, PS3, Wii, and PC.
Studied Python, Linear Programming, Group Theory, and Graph Theory.
Shipped: Academy of Champions, Pure Football
Team Lead, EA Apr 06 - Apr 07
Software lead programmer on Madden Wii. Technology skills included C++, C#, Lua. Second project was SQL Server
integration into Web Services operating on a ASP.Net framework. Systems-level development in reflection, pipeline,
database, networking, etc. Ran team of 3. Study in Complexity Theory and Linear Programming.
Team Lead, General Dynamics May 03 - Apr 06
Team lead on simulators and game development. Primary tech included C++, C#, MFC, ArcGis, ELT 5500. Areas of
tech included graphics, animation, AI, and networking. database, systems automation, pipeline, etc. Ran team of 13.
Extensive graphics and networking work. Many different windowed tools developed (102). Performance optimizations
led to a 280x performance improvement. Image processing included brightness/contrast, edge detection,
blur/sharpen, etc.
Sr software engineer, Various companies May 95 - May 03
Worked as contract programmer, full time programmer, and for a variety of companies. Details provided upon
request.
Education
Texas A&M, Mathematics. 2003 - 2006 (other universities attended: Simon Frasier, Cal State Dominguez Hills,
numerous community colleges)
196 Semester units (all universities combined, Masters Equiv)
Strengths
● Optimization: has the ability to optimize software with fantastic results. This includes networking, memory,
and performance.
● Design: broad knowledge of design patterns, threading/concurrency, networking, and low-level systems
allows for a large library of design choices and methodologies. Originally a Booch designer, has migrated to
UML, sequence diagrams, and other design analysis tools.
● Team motivation: with a combination of one-on-ones, stand-up meetings, team involvement in scheduling,
well-defined team direction, coaching team-members toward greatness, and allowing team members to select
tasks and specialize, a high level of motivation can be built and maintained.
● Highly-agile: a strong belief in working directly with the customer, has demonstrated repeatedly great results,
low-bug counts (very low in most cases), and quick response to design changes.
Personal:
Advanced Calc and DiffEq, Unity, SDL, Git, Lua, Python, 3D import tools, team building, project mgmt, OpenGL,
Shaders, Networking, Space Partitioning, Collision detection
US Navy 3 years as a Hebrew Translator, Honorable Discharge
Rock climber, Skydiver, Good Cook
Linguist 4 fluent languages, others non-fluent, Hometown Placerville, CA, Population 5,400