About Me

Hello, my name is David Roberts. I consider myself a developer of solutions. Not just code. I try to get involved on the operations side almost as much as on the coding side of projects, as well as the database side. I see no reason why a developer should not be aware of the overall life cycle of software.

I have become much more interested in the deployment pipeline of software recently. I am becoming much more involved in build servers, release management/deployment and repeatable machine configuration. Bringing greater efficiency and easier self management of these components of the deployment pipeline intrigue me.

I would describe the type of work that I enjoy in two words: Developer Support. Not technical support, but support of the flow of software solutions from coding and then into production.

I am not the type of person to wait to be told what to do. I find a problem and then work up a solution for that problem. Where ever there maybe excessive manual processing or frustrations with the interface for a process that’s where I gravitate to smooth it out.

When working up a solution I am always involving those it will affect. Be they developers, administrators, business stakeholders, testers, operations. A solution is no good if those it affects are not aware of the problem the solution is solving and if they don’t see the benefits.

I am a ‘utilitarian developer’. I find the ‘utility’ projects more interesting than the larger business projects. I see the utility projects (builds, deployments, configuration, etc) having a broader affect on the productivity of an organization.

I prefer working with smaller teams that have an established trust with one another and similar lines of thought. Although not exactly the same thoughts. Healthy debates are essential to ensuring practices do not go to far in one direction or another. I work to earn trust, I do not expect it up front.

I am always learning. The fast pace of technology today pretty much requires a constant learning practice. I have no fear of other technologies. I have been primarily .NET for most of my career. Other technologies such as Ruby, Python, Node.JS, Puppet, Chef etc are all items that I look forward to working with to expand the tool set at hand.

Technologies I have experience with:

  • C#
  • ASP.NET MVC
  • Nuget
  • NUnit and XUnit
  • Jenkins and CruiseControl.NET
  • Nant
  • Subversion and Git
  • Powershell (does that even count though ;-) )
  • Octopus Deploy
  • Linux (In the past I’ve used ArchLinux and Ubuntu)

Practices I have experience with:

  • TDD
  • Repeatable configuration (via powershell at the moment learning Puppet)

Technologies that I would like to work with:

  • Puppet and/or Chef
  • TeamCity and/or Jenkins or other build solutions
  • Other build tools (psake, rake, fake, etc…)
  • Python and/or Ruby

I currently live in Oklahoma and will be staying in Oklahoma for quite some time. I am completely open to remote work. I have done so in the past and welcome it again.

You can usually find me on two jabbr rooms most of the day (0800 - 1645 CST (GMT -6/-5))