Wesley Miaw
Wesley Miaw
6592 Broadacres Drive
San Jose, CA 95120

Projects

  • VQM Oracle is a perceptual video quality metrics tool based on network performance information that lets researchers measure and predict streaming video quality. This work was done as part of NCNI.
  • Adaptable Video Descriptor is a method for creating video descriptions allowing you to degrade and reconstruct video very quickly and flexibly. This would allow you to store low quality content locally while optionally leveraging the network to dynamically improve quality.
  • GutenbergReader
    A small Objective-C + Cocoa application that searches the Gutenberg Project by author and/or title and pulls down the text. You can then speak the text. Full source code is included in the archive.
  • Evolutionary War Distributed Multiplayer
    A distributed version of Evolutionary War developed for COMP 243 at UNC Chapel Hill.
  • Lava Lamp Project
    A OpenGL lava lamp simulation I worked on for CS184 at UC Berkeley.

Education

University of North Carolina, Chapel Hill (08/2002-12/2003)
M.S. Computer Science
GPA: not applicable
University of California, Berkeley (08/1998-05/2002)
B.S. Electrical Engineering and Computer Science
GPA: 3.495 (Major) | 3.416 (Overall)
State University of New York, Albany (High School 06/1994-08/1998)
Computer Science
GPA: 4.0

Skills

Programming

Perl, C/C++, Java, Objective-C, SQL, PHP, JSP, Tcl/Tk, C#, JavaScript, Bourne Shell, Scheme, MS-DOS Batch, Python

Operating Systems (development & administration)

Linux (SuSE 6.1~9.1, OpenSuSE 10~11, Fedora Core 4~10, Ubuntu 8, Red Hat 6.2~9.0, Advanced Server 2.1/3.0), Mac OS X, FreeBSD 2.2~4.8, Solaris 7/8, Windows NT 4.0 Server, Windows 2000/2003 Server

Technologies

Apache, BIND, CGI, CIM, CMVC, Cocoa, CSS, CUPS, CVS, Cyrus IMAP, DNS, J2EE, JNI, HTML, HTTP, Mailman, Microsoft Active Directory, Movable Type, MySQL, Netatalk, NetInfo, Network Administration, NFS, OpenLDAP, OpenSSL, Oracle, Photo Manipulation, PKCS#11, PKCS#15, Postfix, PostgreSQL, Qt, QuickDraw, QuickTime, Samba, Sendmail, Struts, Squid, System Administration, TCP/IP, Tinderbox, Tomcat, UDP, Web Services, Windows Media DRM, XFire, XHTML, XML

Software

Adobe Illustrator, Adobe PageMaker, Adobe Photoshop, Ant, Apple Interface Builder, Apple Project Builder, CMVC, EAGLE, Eclipse, Forte for Java CE, Gnuplot, GNU tools (i.e. gcc, gdb, make, etc.), InstallShield Multiplatform, JDK, LaTeX2e, Perforce, Rational Software Developer (i.e. WebSphere Studio Application Developer)

Enterprise

Brocade SilkWorm, IBM Director, IBM Enterprise Storage Server, IBM DS4000, IBM DS6000, IBM DS8000, IBM SAN FileSystem, IBM SAN Volume Controller, IBM TotalStorage Productivity Center (formerly IBM Multiple Device Manager), IBM Tivoli SAN Manager

Advanced Technical Courses

Data Mining, Distributed Systems, Multimedia Networking, Operating Systems, Parallel Computing

Business Courses

International Business, Marketing, Organizational Behavior

Experience

Neko Audio LLC

(06/2008 - present)
CEO & Engineer.

Design, manufacture, and sale of high end audio electronics. Built an award winning audio DAC.

Netflix

(08/2005 - present)
Senior software engineer in the Netflix Electronic Delivery Service group.

Application and Systems Security

Instant Streaming application and systems security developer. Analysis and design of client software to protect content and ensure application integrity. Implemented cryptographically trusted solutions for device and software authentication, including secure boot. Helped design and implement partner processes to protect against security threats.

Netflix Device SDK

Primary developer of the Netflix Device SDK used by partner companies to create Instant Streaming Ready devices for use with the Netflix electronic delivery service. Worked directly with partners to facilitate development efforts and resolve issues. Often drove partner meetings and worked with legal, product management, operations, and other development teams.

Designed and implemented critical algorithms such as stream selection and bandwidth measurement. Integrated the Linux Trace Toolkit with embedded Linux to identify hardware playback bugs. Modified the kernel to log crash data for upload, and the toolchain to trace memory allocation. Implemented priority inheritance to ensure good response to user input during playback.

Electronic Delivery Servers

Developer of second generation Netflix content delivery network simulation framework using DESMO-J. Experimented with load balancing and cache management models to identify algorithms and architectures that would maximize efficiency of resource utilization and minimize operational cost.

Primary designer and implementer of the customer playback tracking scheme, designed to prevent abuse or unmetered viewing of movies. This limits customers to the viewing time allocated for their subscription plan, and ensures our revenue sharing obligations are fulfilled.

Developer of various electronic delivery servers, including the license server that delivers Windows Media DRM licenses to customers. Conducted some performance tests to identify the configuration options that would allow for maximum license delivery rates. Designed and implemented the current electronic delivery database abstraction layer.

Content Encoding Workflow

Sole architect and developer of Netflix's internal content encoding pipeline. This is a web-based application backed by Oracle that keeps track of content as it is received and flows through the encoding process, including support for third-party encoding houses. Features include asset management, automatic encoding and DRM, integration with IT operations for automatic file management, and role-based authorization. Worked closely with many teams, including finance, data warehouse, and the web site.

The system uses lazy-load caching for fast search, signed Java applets for client-side execution, and web services to communicate with client applications to facilitate various automatic operations. The web interface makes use of JavaScript and XML to provide a dynamic and responsive user experience. Windows Media Encoder and DRM components are used for automatic encoding and DRM.

Netflix Movie Player

Implemented Windows Media license acquisition using Windows Media Format 11 SDK.

IBM

(01/2004 - 08/2005)
Software engineer in the IBM Software Group working on TotalStorage solutions. Previously in the IBM Systems Group.

TotalStorage Productivity Center Advocates

Customer advocate for TotalStorage Productivity Center (including IBM Multiple Device Manager). Worked closely with customers, business partners, and IBM employees around the world to provide Level 3 development support. Worked on-site with the customer, and with multiple internal divisions, to help close a large multi-million dollar contract with a top Fortune 100 company.

TotalStorage Productivity Center

Developer for TotalStorage Productivity Center for Disk, a performance monitoring and analysis application that is part of the TotalStorage Productivity Center suite. TPC is an enterprise systems management application. My role included development, installation, and support efforts involving IBM DB2, IBM Director, TPC for Disk, TPC for Data, CIM agents, and IBM WebSphere Application Server.

Performance Data Collection Utility

Technical lead and primary developer of the Performance Data Collection Utility, a CLI tool for gathering performance statistics from the DS8000 and DS6000 storage devices. Carried the tool from conception to delivery, and provided post-release support to both internal and external customers.

DS8000 HMC

Added support for the DS8000 Information Center to the host master console GUI, which is built on the WebSM platform.

IBM Multiple Device Manager

Technical release lead for version 1.1.1.1; duties included driving the resolution of technical issues, investigation and evaluation of defects, and inter-team coordination. Worked with developers to fix defects and debug code. Performed system verification testing. System administrator of the MDM test environment. Provided level 2 technical support to customers and Linux education and training to internal teams. Wrote the Linux portion of the installation guide.

IBM Extreme Blue

(06/2003 - 08/2003)

Developed an automatic policy-driven management framework. Integrated into IBM's enterprise server management tool to update device drivers and firmware. This reduced IT expenses and server downtime for IBM customers while simultaneously reducing IBM warranty and support operating expenses. This software is expected to ship to clients in 2004.

This feature was built in Java around XML for deployment on x86-based platforms. Our four-person team drove the project from initial specification through to production, and was composed of three developers and one MBA.

Berkeley Multimedia Research Center

(11/2000 - 07/2002)
Mash toolkit middleware applications developer for the Open Mash Consortium and network and system administrator (Sparc Solaris, FreeBSD, Red Hat Linux, Windows NT 4.0, Windows 2000, Mac OS X).

The Mash toolkit is currently under the Internet2 Applications Development group and in use by individuals and groups across the world. This includes the Virtual Rooms VideoConferencing System, who adopted Mash after I implemented automatic window placement in vic.

Ported the Open Mash MBone streaming media toolkit to Mac OS X + XFree86/XDarwin with support for native video and audio in vic and vat. This is the first and only MBone toolkit and collaboration application for the Macintosh platform. Engineered a postDCT real-time video smoothing filter based on a third-party algorithm, improving image quality for low-bandwidth transmissions.

Integrated Tinderbox with ViewCVS and LXR to help developers keep track of code changes. ViewCVS was modified to work with PostgreSQL instead of MySQL. LXR was extended to recognize oTcl and TclCL syntax to provide a full LXR system across the C++ and oTcl/TclCL Mash codebase. This integrated solution allowed new developers to ramp up and understand the Mash framework more quickly and made it easier to identify developers responsible for specific changes.

Developed a set of web-based tools to manipulate a satellite feed and A/V matrix switchers. A combination of Java applets, JavaScript, and Tcl CGI scripts running over Tcl-DP were used to send IR commands to the satellite dish and RS-232 commands to the matrix switchers. This suite replaced a non-intuitive process involving multiple physical locations with an easy to use web interface, allowing developers to manipulate test multimedia streams quickly and without chance of error.

Wesley Miaw Consulting

(06/1996 - 12/2003)
Entrepreneur providing a commercial, fee-based consulting service for small businesses and individuals.

Responsibilities included project management, specifications, time and cost management, customer relations, and follow-up support. Worked individually on projects ranging across front-end web development to back-end database solutions, network and server setup and support, custom software development, and graphic design. Some projects are highlighted below.

Ported a Win32 document database search and cross-referencing C application used in the medical industry to Mac OS X using Cocoa and Objective-C. This was done to meet the client's customer demands and provide a single cross-platform solution.

Developed a 3-tier ecommerce solution in Perl for a clothing retailer and distributor. Its modular design, use of templates, and configuration directives allowed its presentation and functionality to keep pace with changes in their business operations.

Used tcpdump and Perl to log and analyze network traffic on Red Hat Linux. This tool was used to monitor outgoing subnet traffic at a small business ISP for billing purposes.

The Echo

(09/1997 - 06/1998)

Co-founder of a student run non-profit community newspaper with a distribution of several hundred copies on a bi-monthly basis. Managed several people regularly involved in the paper. My responsibilities included senior designer (design and layout of the paper's look and feel), business manager (financial management and advertiser relations), and technology editor (main column and article review).

Other

Designed and implemented a CD-ROM interface for control and digital playback of audio compact discs in Xilinx on an XC4010XL board.

Developed a fault-tolerant and highly-available peer-to-peer multiplayer game using Perl 5.8 threads, Perl/Tk, and RPC.

Honors & Activities

Apple WWDC 2000 - Student Scholarship Winner
Golden Key Honor Society - Member
ThinkQuest Internet Challenge Semi-finalist - A Presidential Exploration (1997)
People to People Student Ambassador to Australia (1993)

Publications

Wesley Miaw. A Load Balancing Framework: Micro to Macro. [ PDF ]
Ketan Mayer-Patel, Wesley Miaw. Evaluating the Effectiveness of Automatic PVR Management. IS&T/SPIE Electric Imaging 2004. [ PDF | PS ]
Wesley Miaw, Lawrence A. Rowe. Implementation of a Real-Time Software-only Image Smoothing Filter for a Block-transform Video Codec. IS&T/SPIE Electric Imaging 2003. [ PDF | PS ]
Wesley Miaw. AltiVec Technology. California Engineer. Autumn 2000, Vol 79, Issue 1. [ PDF | PS ]