My name is Bryan Kreitlow, I am a husband, a father, a gardener, a tinkerer, a learner and a Senior Full-Stack Software Engineer. I grew up in Beaverton, Oregon (outside of Portland) and was lucky enough to get a great High School education from a new school called Southridge High School that had just opened prior to the year I started.
I enjoyed building gaming PCs and helping my dad with computer issues for his Mechanical Engineering business. This exposure to technology and how it could enable people to be more productive and lead richer lives made me excited to learn more about all things S.T.E.M. related. I explored some of my interest in the sciences by taking a few Computer Programming classes (C++, QBasic, Java) that were offered by my High School as well as an IB Biology class.
Not knowing exactly what I wanted to study but with a love for Oregon and the surrounding areas I decided to go to University of Oregon for my undergrad (A Bachelor's Degree in General Science). I was excited about computers but also about other S.T.E.M. topics and I found I accelerated in Physics and Chemistry but always reflected fondly on the IB Biology class I took in High School. This helped me to try out some of the more interesting niches in Biology like Bio Physics where we studied the molecular, chemical and physical forces of protein structures and cellular components like DNA.
Upon graduating in 2008 it was time to get to work. I wanted to stay in Eugene and was lucky to find an opening that would leverage my customer service experience from my time at U-Haul and let me be around fascinating science in the field of drug discovery and cancer research. I landed at MitoSciences a University spin out from fascinating research using Mitochondiral antibodies and various laboratory techniques to study the interaction of drugs/chemicals with the powerhouse of the cell.
The science was interesting and dealing with international and domestic sales to various laboratories was interesting work. This job helped me become familiar with all of the research organizations across the world and helped me to understand how people shopped for laboratory supplies including novel antibodies. My technical background used in helping my dad at work and building/maintaining gaming PCs kept coming into play with various IT tasks around MitoSciences. From here I started to get familiar with PHP in order to help develop/maintain the company website. I also stepped up to the challenge of migrating all of the company data from a series of Excel Spreadsheets and Quickbooks to SAP Business One, an Enterprise Resource Planning system.
Working with SAP and getting a window into Production Planning and Accounting helped me see the power in leveraging information systems within the business environment. There was always room for improvement and you could begin to forecast the effect of change. I was eager to learn more about data creation and storage in business so I began looking at educational strategies to hone that space.
I decided to get a Master's degree, something that would show my understanding of technology and that was focused on Business Information. I found an online program that would allow me to continue to work full-time but help me scratch the itch I had for learning more about managing business information and leveraging it to make informed decisions and provide value. I started my program with Walden University and set out to earn my Masters of Information Systems Management with a specialization in Business Information Management (MISM). At the same time the company I had helped grow was acquired by Abcam a large antibody products company out of the United Kingdom. This acquisition meant that the work I had been doing in PHP would no longer be needed because Abcam would be building the website and sales material. A friend of mine suggested I meet her coworkers at Social Communications Company because they were looking for someone who could author XML in order to create new experiences with their platform product.
This intro to how markup languages could be used to build amazing user experiences only got me more excited about software development. Shortly after I had began writing XML and testing it with the client that would render it into a map I begin working on a way to use more technology to make the process more efficient so I built a Map Editor that would interpret the XML and load it into HTML5 Canvas and then you could drag-and-drop and add new Rooms and Artwork and it would generate the corresponding XML. During this project and the projects that followed (an Analytics toolset written in PHP with flot.js for visualizations and an Administrative Console written in Angular with Node.js) I grew to love Node.js and the power of Asynchronous JavaScript and the progress of tools for Frontend Development that could also be used on the server with a community that seemed to know no limits.
I came across a great opportunity to work for one of the best known companies in my small town and to get to work with Node.js and JavaScript everyday. I worked at CBT Nuggets and helped them transition to a microservices architecture while working with talented developers from all across Oregon. There was no shortage of projects at this new company from a Video Production interface for their trainers to upload videos and for the review process to take place to ensure the quality met CBT's standards to learning about video processing and using ffmpeg and other tools to build an encoding pipeline to help them setup delivery on Akamai. I also got more exposure to larger Frontend projects and used more frameworks like Backbone.js and ReactJS (which was just starting to get on developers' radar's). This was also my first time beginning to work with Cloud providers and being blown away by the tools offered on AWS and the concept/practice of Dev Ops.
When the time came for me to push myself and start a new challenge a friend of mine introduced me to a small startup that was desperately in need of developer talent and direction to help them bootstrap a set of Web-based Applications to help people with autism and other cognitive differences. This job was an amazing growth opportunity where I got to experience the design/iteration process and see the real-world impact and the effect that powerful software can have on groups who don't often get the help they need. We built a large variety of cognitively accessible tools using Meteor.js which was a great platform for a solo-developer to provide a mobile app experience, leverage horizontally scalable delivery with their AWS-based provider solution. I worked with a few interns from the local Community College as well which is something I have found I truly enjoy. Teaching software development is on the same level as developing software. I took great pride in my work at Cognitopia and enjoyed the Tuesday and Thursday labs where I could meet and interact with the people whose lives were directly impacted by the self-determination software we created.
Unfortunately the constrained budget of a grant-funded startup didn't allow for the growth I was hopeful for after nearly 4 years that would allow me to work on a larger team. I heard of an opportunity to work for a company that was still in a startup stage but to work on a team again and in a space I knew was important but didn't have very much personal experience with. Working at Cognitopia I did run into the issues around building an amazing SPA or Single Page Application which was that crawlers were not very good at reading pages created entirely via JavaScript. The solution I found was a rendering service that would request the page as a browser, render the JS content and deliver the static result. The opportunity to learn more about SEO seemed like a good opportunity to be a better Web Developer in general. SEO and robot visits to sites can make or break a company, especially a startup and I wanted to remove the veil of mystery.
So far in this new Chapter I can see why there is great excitement around React as it is one of the only Frameworks with an elegant solution to server-side rendering. I decided to build this website as a way to show off my chops as well as to fully understand what is possible with the latest in web technology. This website is built with React, served at edge with Cloudflare using Workers KV for asset storage, includes server-side rendering and leverages a single JS file for delivery in three ways, the server route handling, the client code and leveraging the ServiceWorker API to have a versioned local cached/offline experience. Let me know what you think!