Post Job Free

Resume

Sign in

Engineer Software

Location:
San Marcos, CA
Posted:
January 19, 2015

Contact this candidate

Resume:

Mickey Kawick

NETWORK core Systems engineer

abjdia@r.postjobfree.com

714-***-****

**** ******* **

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



Contact this candidate