February 12, 2015
I’m back! This blog has been dormant for a long time since the advent of Twitter. But now I have something to share that is a bit longer than 140 characters…
About a year and 4 months ago I accepted the position of Chief Technology Officer at Hyatt Hotels Corporation. It was really a no-brainer decision since I now have the pleasure of working with Alex Zoghlin again. I’ve known Alex for a long time, ever since I joined his first company as a software engineer at Neoglyphics.
We have convinced the senior leadership team at Hyatt that technology will be a strategic advantage that will enable us to disrupt the hospitality industry. As software eats the world, all companies in all industries will eventually become technology companies, or they will perish. At Hyatt, for strategic initiatives this means that we are reversing the trend of outsourcing technology and treating it like a cost center. We are hiring a plethora of technologists in many disciplines from product, to dev, to ops, to help us develop platform and application products in a Continuous Delivery model. Check out hyatt.jobs for details.
Especially in my area, we are hiring technologists with some or all of these characteristics:
- You are just as skilled at communicating with humans as you are with machines.
- You are a software craftsman who values quality over quantity, but you are not a zealot or perfectionist.
- You like Agile. You like DevOps. Thus you like Continuous Delivery. However, you understand that Agile doesn’t mean you can skip planning, and DevOps and ITIL can coexist in harmony.
- You like Clouds, providing agility, provided by automation, made possible by standards, discipline, and pragmatic governance.
- You like to build platforms composed of loosely coupled, contractually obligated services. Terms like API Façade make you smile.
- You love Open Source and are willing to contribute back to the communities.
- You want to help software take over the world, and help provide authentic hospitality in the process.
- You want Mobile apps to be first class citizens in the software world that anticipate your needs.
- You like to laugh in the face of adversity.
- You are a maker and you are driven by the thought of seeing your creation in the hands of millions of customers.
- You like the challenge of simplifying complex systems, and you always consider the big picture even when acting locally.
- You are a pleasure to work with and value a great company culture.
We have so much interesting work ahead of us, and the best part is that you can actually visit one of our hotel properties and see how your work enhances the experience of our guests and hotel associates. So as they say in infomercials… don’t wait, act now! -> hyatt.jobs <- Do it, do it!
April 5, 2009
I attended an excellent Erlang workshop presented by Martin Logan Friday morning at the Flourish conference hosted by UIC, my alma mater. Martin is a great presenter who is a lead developer of the Erlware open source project as well as an author of an upcoming Erlang book. I recorded parts of the workshop using the Flip Mino HD. If you missed this event you might want to check the upcoming Erlang Factory conference where Martin will be presenting again. Otherwise, check out the videos at the end of this post. There was a great turnout at this event.
Is it worth your while to learn a new language with such a strange syntax? IMHO, it certainly is! I was first convinced after reading The End Of The Free Lunch which explains the paradigm shift in processor design from higher speed to multi-core and the subsequent need for concurrency oriented programming. I continued to read up on concurrency oriented languages and the Actor model, and I found out about all the fuss about Erlang. I have had far too much experience with Java applications that crash under load due to concurrency issues related to the Java shared memory model, so Erlang really piqued my interest.
It was pretty easy for me to commit to Erlang/OTP for new distributed services middleware when I worked at Orbitz Worldwide, especially since Martin is employed there as a Technical Manager. He mentored a very small team of developers who wrote an awesome RESTful web services reverse proxy using Erlang/OTP. It provides for robust and fault tolerant service registration, request routing and monitoring in only a few hundred lines of code. Congrats to the team at Orbitz for recently deploying this app to production! I plan to apply the same design for Sears Holdings’ Online Division as we continue to build out our platform. ;)
I have a couple more videos that I’ll upload later.
p.s. We’re hiring! If you are interested email me for details @ matt at mattokeefe dot com, or DM me.
March 4, 2009
Last Thursday I received this notification from Sun regarding a JavaOne technical session proposal:
Congratulations! Your submission entitled ‘RESTful Protocol Buffers’ has been accepted by the JavaOne[sm] Conference Program Committee as an ALTERNATE session for the 2009 JavaOne conference in San Francisco, California, June 2-5, 2009.
As an alternate speaker, your badge will allow you full access to the Conference sessions, BOFs, Hands-On Labs, and the Pavilion.
It is really exciting that I might be called upon to present again. Last year I learned a lot about how to prepare a technical session, and Complex Event Processing at Orbitz was very well received.
Here is the abstract for our proposed presentation:
At Orbitz, Jini has served us well, but at the cost of tight coupling due in part to shared code and Java serialization rules. In order to improve agility, we are migrating to a RESTful web services architecture using Protocol Buffers to define message formats. The result is loosely coupled services with autonomous life cycles supporting evolvability and innovative mashup-style development.
This session is intended for experienced architects and tech leads that are familiar with distributed systems and data encoding methods.
What you will get from this session:
- using document schemas to constitute language neutral contracts
- using standard HTTP plumbing and intermediaries
- implementing a reverse proxy for request routing based on RESTful URLs
- applying OLAs for governance and service isolation
- writing automated service layer tests to ensure backward compatibility
I’ll see you at JavaOne, with Alex Antonov!
January 4, 2009
One of my New Year’s resolutions is to blog on a regular basis. I plan to write about my professional interests including the Internet, distributed systems, application monitoring and management, event driven architecture, complex event processing and customer driven innovation. I am involved with a couple of open source projects now, ERMA and Graphite, and I’d love to share some experiences that might motivate you to check them out.