Me talking JRuby at LinkedIn

Noah Gibbs

Principal Software Engineer, Author and Speaker
Available May 2015, Silicon Valley or Remote (No SF)

Contact Me

The Right Principal Engineer or Architect?

Your architect needs a deep understanding of technical organization and culture. He should pay attention to business and execute on priorities.

It takes years to find a mature engineer that also understands your business needs.

You want me as that principal engineer or architect — click below for more.

Noah is full-stack: he can go from discussing sales objectives to the algorithmic complexity of message routing in the same breath and tie it all together.

Al Tobey, Tech Lead, Ooyala

Click these for more!

Hands-On

Leading small, productive teams: I turn a list of priorities into team goals and make them happen. I'm comfortable operating independently — for instance, when repairing and rebuilding OnLive's unmaintained analytics system with the simple mandate "find out how it works, fix it, extend it, don't break production." I wholeheartedly recommend Noah, a brilliant, dedicated, and greatly admired developer and leader.

Making data tell a story: I enjoy visualizing important information and showing how the data backs it up. I've pulled business data for investors. I've built several analytics dashboards for engineers. My customer service dashboard was a point of pride at OnLive. I'd love to see the story in your data look good. I've found that it is difficult to find an engineer with just the right balance of technical savvy and business understanding who can tease out the data that matters and then present it in a way that helps you move a product or company forward, but Noah is one of those guys.

Software Architecture: I've been architect or co-architect on a number of large systems, new and legacy: a sharded Esper-based multi-region analytics system, a Cassandra-based high-volume metrics system, a graphical UI framework for a smartphone OS. I've also worked on a large number of smaller systems and tools. I'm very comfortable coordinating between teams and building the final system. He has been our Rubyist and the star of our analytics effort. But he has also been much more than that. He has been a terrific colleague, mentor, cheerleader, analyst and friend.

Ruby and Rails: I wrote a book on deep Rails internals, speak at Ruby conferences, taught Rails at CMU West, and was OnLive's Lead Rubyist. I've mentored many teams and several companies in Ruby and in Rails.

I teach an online class on Ruby deployment, blog about Ruby, and have a speaking portfolio full of Ruby talks (among others). When I came to OnLive I was somewhat new to Ruby and he took me under his wing and we worked together on some really fun and valuable tools. He also took the initiative to begin an Engineering blog and an Open Source presence at OnLive and has encouraged me to contribute to both.

NoSQL storage: I led and managed OnLive's analytics group. I've spoken at the Cassandra Summit about Cassandra schema design and published open-source Cassandra-based tools. I've used ZooKeeper, MongoDB, Redis, CouchDB and many more tools, and read the foundational papers on BigTable, Dynamo, Gossip, Spanner and more. I can compare SQL and NoSQL tools and choose the right one for your problem. I've written and debugged systems that pushed 10s of thousands of messages per second and processed terabytes of data. I'm very willing to use old boring storage technology or the new hotness, depending on the need. I helped process terabytes of data using Cassandra, Hadoop, MySQL and Thrift at Ooyala, and then helped move us off MySQL. ...his breadth of knowledge around big data / Cassandra and RoR is unlike any I have ever seen. Noah is well known as competent and a genius around the big data community and has spear headed the efforts to pull OnLive into next generation of NoSQL.

DevOps: I wrote the open-source Ruby Mad Science deploy software and a commercial class to support it. I did extensive Puppet configuration and refactoring for analytics and ops software at OnLive. I led a deploy-software project at Ooyala. I've worked extensively with tools like Chef, Puppet, Capistrano and Vagrant. I have significant AWS and Heroku experience. My commercial product supports AWS, Linode and Digital Ocean. I would describe him as friendly, polite, eager to teach, and always willing to distill his knowledge on anyone who wants to learn. He literally wrote a book on Rails and always tries to help people with whatever projects they are working on.

Solid credentials: I taught Ruby on Rails for a Masters Degree program at Carnegie Mellon West. I graduated from Carnegie Mellon in Math and Comp Sci. I've spoken at Ruby and Cassandra conferences. I'm an internationally recognized author on Ruby web frameworks and on server deployment and provisioning. I've worked for successful startups (Ooyala, PeakStream, SugarSync). [resume] [portfolio] [GitHub repo] His work was critical to building up our subscriber base, understanding what our customers were doing, and figuring out where to invest our product and engineering resources.

Full-stack generalist: I've written everything from UI and application code, to Big Data and Analytics, to JavaScript real-time graphs, to embedded and multimedia, to deep-dive SQL and NoSQL optimization, to distributed systems design. I even dabble in front-end code, such as the page you're reading. I've worked in 20+ languages over nearly 30 years, from C and assembly building operating systems and device drivers to scaling high-traffic Ruby on Rails sites. I do mean hands-on and I intend to continue contributing as a software engineer. He's the go-to guy (read: force multiplier) on so many topics that I've lost track of how many there are.

Perhaps I can help you. Click "contact me" or keeping reading for more details.

Contact Me

I Build Products Independently — Here's Why You Really Want That

I sell commercial products to programmers like yours.

Regular communication: My income depends on me communicating clearly when I'm selling. So I'm good at it. I can instruct, document and mentor to make your other engineers more skilled, saving salary and reducing time-to-market. I write and present at all levels from "explain like I'm five" to "give me the experts-only summary like I'm Jeff Bezos."

Always a pleasure to engage with intellectually, socially, and professionally, going beyond just technical expertise into great communication and working fantastically with other ways.

Marketing experience: It means I can communicate with your Product, Sales and Marketing groups in their own language. I know conversion rates and A/B tests, statistical significance, email marketing and how to present data to a less-technical audience. That means more engineering support for Product and Marketing which means better measures of product/market fit which means more money. This is roughly the same activity as "growth hacking" — engineering support makes your marketing more effective. I've found that it is difficult to find an engineer with just the right balance of technical savvy and business understanding who can tease out the data that matters and then present it in a way that helps you move a product or company forward, but Noah is one of those guys.

Teaching engineers: I taught Ruby on Rails at CMU West. I spend my "spare" time with engineers, doing interviews with engineers, taking classes on engineers, selling to engineers... Or taking Breanne Dyck's class on teaching effectively. This makes me both a great mentor/teacher, and a great person to help build, reinforce or improve your company culture. He has been a terrific colleague, mentor, cheerleader, analyst and friend. He spearheaded our engineering blog, writing many of the articles and encouraging and helping many other engineers to publish articles as well.

Liaison between engineers and business: Often, you wish your engineers understood "business reality" better. It takes an unusual person to speak both sides fluently. It's not just when you have one thing to explain — everybody's life would be better if each side could see the other a bit more clearly. I can explain on specific occasions, but I can also provide that small drip of constant perspective. Both are valuable, and let the whole company run more smoothly. It is difficult to find an engineer with just the right balance of technical savvy and business understanding who can tease out the data that matters and then present it in a way that helps you move a product or company forward, but Noah is one of those guys.

Still pre-profit? don't worry: I can present data for funding decks or for popular consumption, and I've done that for OnLive: analytics data to convince people of the product's potential, in a way that looks good.
Globe with session count spots
If you're looking for an engineer who can really get to the heart of your data and help you work with it, Noah is your guy.

What products? I'm the author of Rebuilding Rails and Rails Deploy In An Hour. I sell them independently (no publisher) and do all my own promotion.

Cover of Rebuilding Rails Rails-Deploy-In-An-Hour Logo

Get More Engineers, Get More from Each Of Them

Me talking Ruby at OnLive

Recruiting Meetups: Engineers specializing in Ruby, Rails, DevOps, NoSQL and analytics cost tens of thousands of dollars to recruit. I can give engineering talks to recruit them -- which cost around a hundred dollars, mostly for snacks. Shall I give a few recruiting meetups for you? He engaged the audience while we we prepared to begin. Plus, his answers in the Q&A clearly showed his empathy and concern for the audience.

Well-Attended Talks: At OnLive, I organized local meetups for recruiting, drawing crowds of 50+ programmers before we limited attendance for space reasons. Ruby people are often very hard to recruit, and I was able to find a few extra for OnLive. A fantastic mentor, and takes the time to explain advanced concepts to a more junior engineer.

Internal Training: I frequently present to coworkers about Ruby, Rails, Cassandra, ZooKeeper and other topics — over 25 talks at OnLive and Ooyala. I can record my talks and you want me to. Here's my speaking portfolio. Noah avidly follows the latest developments, most notably in Rails, and has lead many a lunchtime session on a variety of topics.

Mentoring: I've taught at Carnegie Mellon East and West, at major programming conferences, internally at companies, for commercial products and at meetups. My speaking portfolio covers a number of examples. I teach internally and in public, techical and nontechnical topics, hobbyist and for-profit. You can see examples online. He is not out to show how much more he knows than the rest of the engineering team but instead he is genuinely interested in bringing all of us to his level. And he shows this on a daily basis.

Jumpstart your on-boarding: New employee on-boarding is a strategic asset that saves months of engineering time and increases diversity, yet few companies invest in it. Want to jumpstart your on-boarding with technical talks? I'll do that for you. He has a rare combination of guru expertise and down to earth friendliness and helpfulness. Noah is always willing to brainstorm, mentor and otherwise help anyone who asks.

Photo from an OnLive meetup

What Can We Do For Each Other?

Graph of messages forwarded

The list above has a lot of benefits. Even better, you can pick what you want and skip what you don't.

But there's no such thing as a free lunch, right? Let's talk about what I need from you.

A position where I can make a difference. Many benefits only work if I have leverage. I need at least a lead engineer position or equivalent.

Money. Appropriate pay is important — it makes change much easier. I cost about two mid-level Silicon Valley engineers. I will add that much value.

(Two mid-level engineers' worth? Yes. Sticker shock? I can offer 80% time for 80% price, or a consulting position to let you try before you commit long-term. That will be more expensive, though, not less.)

A small team. I maintain my morale by working on software. That means I only manage a few direct reports. Let's keep management below 50% of my time. It's the best value for your money.

Work-life balance. I have two adorable daughters and a wonderful wife. If we can negotiate 80% time, you can get your favorite advantages at a lower cost. This may make my rate more acceptable to your budget. I don't mind occasional crunch-time or odd hours. But I need actual 40-hour weeks most weeks (or 32-hour weeks with 80% time.) Think value, not price: the benefits above are worth your investment, and I will achieve them during normal work hours.

Wearing Enough Hats. I often work for smaller startups. That's not a hard requirement, but it often helps. My blend of skills can be hard to allocate in a business with rigid roles and a philosophy of "let the specialists do it." In a smaller company I can often be a "free electron" and that's enough.

no San Francisco!

South Bay locations are great. Remote work is great. But San Francisco doesn't work because I own a house in Fremont, CA. I'm not looking to relocate, inside California or outside it. Yes, I know about BART.

Contact Me

Let's Do This!

Sounds good? Let's talk. Specifically, if you can hire a principal engineer, let's discuss what positions might be appropriate in your organization. We'll talk, we'll have an excellent interview and I'll hit the ground running. Click this button:

Contact Me

Resume Details for Engineers

As a software engineer, you may have been asked, "does this guy have technical skills?" I'll give the simple version here - don't want to keep you longer than necessary.

Here's my portfolio, including professional and personal projects, commercial products, speaking gigs and interviews. That should substantiate claims like "used a lot of technologies and languages." I also have a GitHub profile and a resume, both with less detail.

Noah is always willing to brainstorm, mentor and otherwise help anyone who asks.

Ruth, SWE, OnLive

I was an architect on a UI framework for ACCESS Systems Americas. I've led a custom Ruby web framework project and an analytics rescue project at OnLive. I was a tech lead for a deployment project and co-architect for a Cassandra-backed metrics system at Ooyala. There have been other projects, but those are the big recent ones.

I've spoken at two major conferences: GoGaRuCo and the Cassandra Summit. I've spoken at about 10 local meetups, including the OnLive ones. I've had a few interviews like The Ruby Hangout and a meetup with the Toronto Ruby Brigade. I've been on The Ruby Rogues podcast (scheduled for a second one, too!), created a guest episode of RubyTapas (subscribers only, alas). I'm known well in the Ruby and Rails communities, though I'm not Avdi Grimm or anything.

My book, Rebuilding Rails, has sold over 700 copies as I write this. I sell independently to Rails programmers. Ask around at your local Ruby or Rails meetup — folks have heard of it, and one or two may own a copy.

I learned Ruby while standing next to Noah and I have to say that it's the best possible way to do so.

Al Tobey, Tech Lead, Ooyala

I wrote the open-source Ruby Mad Science software for my deployment class, Rails Deploy In An Hour. You can read through the software, which is basically an integration layer over standard tools like Chef, Capistrano and Vagrant that tend to play poorly together. It also has a very convenient installer for that whole software stack. If you've used Chef, Vagrant, etc. then you already know why that's really useful. It's bizarrely difficult to find this level of integration outside of giant Enterprise products. So I wrote it.

There are a lot of cool things that I didn't emphasize above because managers and business guys tend not to care about them. I started an OnLive engineering blog and wrote over 40 posts for it. I created the OnLive GitHub organization and wrote a fair bit of the code there. I wrote some open-source projects for Ooyala. And hey, look through the personal section of my portfolio, especially the later bits. There's lots of fun stuff inside.

One minor subtlety: you'll see a combination of Ruby and JavaScript stuff with OS and systems stuff. I worked in OS and driver-level code, primarily in C, for about ten years. I've been doing Ruby, JavaScript, analytics, DevOps and distributed systems for about the last five years. A lot of the "disconnect" is really "a long career in multiple stages."

Thanks for reading!

Just Scrolled Down To Click "Buy"?

You wanted "Contact Me". Here it is again: Contact Me