Paul Okstad ~ about me resume blog projects email rss feed


Paul Okstad

Software Engineer • Golang Developer

Email: pokstad@icloud.com

Long Beach, CA

Download 1-Page PDF Resume

Philosophy

My ultimate career goal is to always make my last role obsolete through a combination of engineering and mentoring. I believe that being transparent and sharing knowledge creates the best collaboration environment with my peers. Software engineering is extremely rewarding when you constantly push yourself to conquer problems so that you can focus on the next one. Being a good engineer means that you must always be willing to get out of your comfort zone to learn a new skill or approach a problem differently. Software is enabling the human race to become exponentially efficient in everything that we do and I am excited to be a part of that.

Skill Highlights

Programming Languages
  • Golang
  • Python
  • Swift
  • Objective-C
  • Javascript
Microservices
  • Protobuf
  • gRPC
  • Docker
  • x509
Software Used
  • Git
  • Gitlab CI
  • CouchDB (noSQL)
  • RHEL/CentOS Linux
  • MacOS

Experience


(Stealth Startup)

Platform Developer

August 2016-present

I have been working for a stealth startup in the very new field of Mobile Edge Computing (MEC). My responsibilities include being a project lead on our appliance agent software as well as maintaining scalable microservices. My personal goals have been to design highly readable and testable code to improve onboarding and reliability.

Achievements

  • Advised and coordinated transition to Golang to embrace concurrency, static typing, and tooling benefits
  • Devised strategies for managing monolithic Go repository to increase developer productivity
  • Devised strategy for decoupled command messages and action handlers in microservice environment
  • Developed libraries for interfacing with various Linux-based service configurations and commands
  • Devised fault tolerant strategy for management of mutable state of server resources
  • Closely coached and mentored new project contributors while addressing feedback and suggestions

Skills Exercised

  • Golang
    • Writing idiomatic and resillient Go code
    • Utilizing contexts for cancellation
    • Avoid Goroutine leaks by utilizing wait groups and error groups
    • Minimizing breaking API's through use of self referential options
    • Embracing interfaces to define contracts/requirements between components
    • Documenting code extensively for use with godoc
    • Writing expressive unit tests that run on every save
    • Utilizing static code analysis to lint code before every PR
    • Developed continuous integration strategy utilizing Gitlab CI
  • gRPC and Protobuf
    • Code generation via gRPC/Protobuf service definitions
    • Writing client libraries abstract transport and message details
    • Standing up gRPC services during integration tests to validate both server and client
  • Systems
    • Docker
    • Linux network management
    • IPSec and IKEv2
    • SystemD
    • x509-based PKI
    • BIND DNS
  • Continuous Integration
    • Gitlab CI
    • Compiling, testing, and linting Go code
    • Building and capturing RPM and Docker artifacts

Hard Coded Fitness, LLC

Partner & Co-Developer

2010-present

My friend and I founded HCF to design an innovative fitness app that did more with less. It has been a rewarding journey. Being a two man shop, we wear many hats and have learned many lessons throughout the life of the product.

Achievements

  • Co-developed the best selling app, Bodyweight Training: You Are Your Own Gym, that revolutionized bodyweight and functional fitness
  • Maintained strong customer relations on our paid app that has earned us a strong 5 star rating with over 3200 reviews
  • Iterative improvements to UX/UI driven directly by customer feedback
  • Devised localization strategy to translate our app for major growth regions
  • Designed and deployed Customer Account & Sync Service
  • Developed user facing web app using Google App Engine with Golang
  • Automated mobile database import using Objective-C, Python scripts and Google Docs
  • Shared general business responsibilities

Skills Exercised

  • iOS Development
    • Core Data & Sqlite backend in Objective-C
    • CouchDB (NoSQL) Sync System in Objective-C
    • JSON and Plist data import/export in Python and Objective-C
    • Web services in Objective-C
  • Server & Devops
    • Built custom CouchDB system on Ubuntu
    • Developed custom Python task queue based on CouchDB
    • Developed Golang based web services on AWS and Google App Engine
    • Deployed to AWS with custom Python build system
    • Developed data backup system using Rsync and CouchDB
  • Front end web development
    • Developed custom Bootstrap components using React.js
    • Javascript AJAX used for communicating to CouchDB server and Google services
    • Experimented using client-side Javascript templates (Hogan.js) for rendering HTML content

The Boeing Company

Systems Engineer

2006-2014

Being on multiple defense programs, I worked on highly critical systems that required a respect for safety and security. I not only needed to work responsibly, but I also needed to be flexible and react quickly to new issues as they arose.

Achievements

  • Improved network test efficiency for high reliability communications network.
  • Developed C# .Net Windows application for interfacing with legacy satellite comm gear.
  • Devised solution for automating performance monitoring of legacy serial communication links to help government decision making.
  • Developed screen scraping applications for monitoring status and configuration control of critical communications gear
  • Simulated expensive control unit in Python to assist in trouble shooting effort in testbed.

Skills Exercised

  • Telecommunications
    • Tcl Expect for screen scraping telnet/ssh sessions.
    • Data analysis and text processing using Perl and Python scripts.
    • Wrote XML and Excel data report generation for various activities
  • Information Assurance
    • Remediated servers using DISA STIG guidelines
    • Automated IA remediation on ESXi and Solaris systems using Bash and Python scripting
  • Virtualization & Devops
    • Developed procedures and manuals for deploying ESXi based servers
    • Extensive use of VirtualBox to streamline server development activities
    • Automated RHEL/Oracle software stack installation using Python and kickstart scripts

Projects


Sofa King: Sync

July 2016

I developed Sofa King: Sync as an experimental iOS app for demonstating various Apple technologies.

Features

  • Written almost entirely in Swift 2.2 in Xcode 7.3
  • Utilizes Objective-C framework Cloudant Sync (CDTDatastore) bridged to Swift
  • Replicates JSON documents from remote server databases and stores them locally on iOS device
  • Uses innovative JSON table view explorer interface for diving into each layer of the object model
  • Embraces best practices for protecting user data and credentials, such as data encryption, mandatory SSL, and iOS keychain
  • Exposes CouchDB HTTP API in an intuitive fashion

Education


California State University Long Beach

Computer Science B.S. 2009

Semester Courses Taken

  • Programming and Problem Solving with C++ (I,II,III)
  • Computer Logic Design (I,II)
  • Discrete Structures with Computer Science Applications (I,II)
  • Computing with Java
  • Database Fundamentals
  • Computer Organization and Assembly Language Programming
  • Operating Systems
  • Net-Centric Computing
  • Software Engineering
  • Computer Architecture
  • Compiler Construction
  • Computer Network Interoperability
  • Object-Oriented Programming with C#