Mike Newswanger
Tech enthusiast and accomplished software developer, systems engineer, and database administrator that is passionate about learning and helping others
Skills
Software Development
Skilled software developer with proficiencies in the following:
- Programming in both object-oriented and functional programming techniques
- Architecting and developing multi-threaded and concurrency-safe applications
- Building regular expressions
- Tuning code for performance and memory utilization
- Managing code with version control
- Working in an agile environment
Database Development & Administration
Skilled in both database administration and database development in both SQL and NoSQL datastores with proficiencies in the following:
- Querying, modifying structures, and programming using native SQL
- Installing, maintaining, and administering Microsoft SQL Server, MySQL, and Postgres SQL
- Administering headless servers
- Implementing key-value pair storage, hash maps, and queueing in NoSQL stores
- Profiling servers to find issues and confirm solutions
Infrastructure Deployment & Maintenance
Skilled in creating and deploying infrastructure as code with proficiencies in the following:
- Designing containers
- Managing containers using Kubernetes, Docker Swarm, and Docker Compose
- Managing servers using Ansible
- Deploying servers on bare metal or via hypervisors (VMware, Hyper-V)
Operating Systems
Skilled in deploying, configuring, and maintaining Linux, Unix, and Windows operting systems with proficiencies in the following:
- Managing headless Linux and Unix servers
- Managing Windows servers at scale using PowerShell
- Configuring and deploying core operating system services
- Keeping deployments consistent using desired-state configuration management
Security
Skilled in implementing security best practices and risk mitigation with proficiencies in the following:
- Interpreting network vulnerability scan data
- Mitigiating common web vulnerabilities in code and application servers
Networking
Skilled in network design and implementation with proficiencies in the following:
- Designing and implementing networks at scale
- Effectively using subnetting, routing, and VLANs
- Configuring and deploying DNS
- Deploying and maintaining firewalls and VPNs
Projects
Dynamic SaaS Stateful Egress Firewall (2020)
Lead the architecture, development implementation, and deployment of a dynamic stateful egress firewall on a multi-provider SaaS platform. Impact assessment and tooling to automate large-scale tests was created using Terraform and Go, and the firewall management processes were implemented in Scala.
Lead impelemtnation
Scala - Golang - Docker - IPTables
On-Premises Kubernetes Deployment (2018)
Created Ansible playbooks and go tooling to manage on-premises Kubernetes clusters. Clusters are deployed with full encryption and authentication--TLS server identification, TLS client authentication, and Kubernetes RBAC permissions. Minimal configuration is needed to alter an existing cluster or add another to any environment. Haproxy Kubefigurator tool is used to configure load balancers to expose services outside the cluster.
Ansible - Golang - Bare Metal
Guetzli Image Optimization (2017)
Designed a distributed system to bulk-process over nine million images on our web properties. Utilized Google Container Engine to distribute processing across 3,600 containers across three regions, and maintained an average of over 99% CPU utilization, allowing it to complete nearly two years’ processor time in under 3 days. Wrote a high-performance queueing system, download queue, worker processes, and downloaders and distributed via containers both on-premise and in cloud infrastructure. This reduced our image sizes by about 80% on average.
Golang - Kubernetes - Google Cloud
Docker Development Environment (2016)
Designed and developed a local, synchronous orchestration system for containers allowing developers to quickly build and scale local development environments. It provides faster, more consistent deployments, lower resource overhead, and greater consistency between developers than previously used solutions. It was designed with scalability in mind and is easy to extend to handle additional projects and increases in project scope. Its artifacts are human readable and can be modified by the developers to fit their needs.
Golang - Docker
Container Factory (2016)
Developed a tool to hierarchically build Docker images. It allows for the use of inheritance, reduces code duplication, and maps build dependencies while providing a consistent build experience for all users.
Golang - Docker
SQL Server High-Availability Cluster (2012)
Utilized SQL Server 2012 RC releases to test and configure a Failover Cluster supporting AlwaysOn technology, which was put into production at General Availability release. It solved read / write contention issues by splitting workloads based on intent and purpose, significantly increasing performance.
SQL Server - Windows Server
Technologies
Programming
LanguagesOrdered by proficiency
- Go
- PHP
- JavaScript
- C#
- Python
- Java
- C
- C++
- Bash
- PowerShell
Infrastructure
Operating Systems- Linux - CentOS, Ubuntu, CoreOS
- Unix - FreeBSD, MacOS
- Windows
- Ansible
- Docker + Compose & Swarm
- Kubernetes
- Microsoft Hyper-V
- VMware vSphere
Database
PlatformsOrdered by proficiency
- Microsoft SQL Server
- Redis
- MySQL / MariaDB
- Postgres
- Memcache
- Elasticsearch
- MongoDB
Work History
- Elastic - May 2018 - Present
-
Cloud Engineer - May 2018 - Present
Develop products to support Elastic SAAS offerings on multiple cloud platforms with a focus on networking components. Key contributor to a L4 and L7 proxy implemented in Go that reduced CPU usage by 80%, improved visibility and reliabilty, and decreased memory requirements over the previous solution. Create various tooling to allow for faster, more confident service deployments.
- Stack Overflow - August 2017 - May 2018
-
Site Reliability Engineer - August 2017 - May 2018
Ensure that all supporting services for Stack Overflow properties are online, performant, and secure. Develop and implmement tooling and processes to manage large sets of infrastructure effectively with a small team. Drive the Kubernetes and containerization initiatives.
- WebstaurantStore - July 2011 - August 2017
-
Site Reliability Engineering Technical Lead - November 2016 - August 2017
Lead the Site Reliability Engineering (SRE) team of eight supporting over 100 developers. Guided SREs in orchestration and deployment strategies, developed supporting tools, and trained employees on issue resolution.
Director of Web Operations - October 2012 - November 2016Built up the Web Operations team from scratch to eight Site Reliability Engineers, eight Database Administrators, and four Systems Engineers and implemented framework for continued growth. Developed high-availability and infrastructure strategies that reduced hardware budgets by over 50% while providing greater performance.
Database Administrator - October 2011 - October 2012Lead an architecture revamp to solve availability and performance issues. Designed and implemented a highly replication strategy to meet both redundancy and performance goals. Reduced SQL transaction times by over 80% on average.
Web Developer - July 2011 - October 2011Led a development team for a high-traffic e-commerce site. Trained new hires to get them up to speed.
- YDOP Internet Marketing - May 2010 - July 2011
-
Lead Developer - May 2010 - July 2011
Created project specifications and implementation plans for client work. Developed modular, reusable components for client delivery. Increased developer productivity and reduced learning curve for new developers.
- Sharp Innovations - March 2008 - August 2010
-
Web Developer - March 2008 - August 2010
Develop software based on client needs. Manage servers, access, security, and databases.
Certifications
-
Creating database objects; working with and manipulating data within SQL Server; troubleshooting and optimizing queries.
-
Installing, configuring, maintaining, securing, and troubleshooting SQL Server instances.
-
Implementation of database and programming objects; optimization and troubleshooting of database applications.
Education
Bachelor of Science: Computer Science
September 2006 - December 2008
Graduated Magna cum Laude