Pavel Simakov - Founding Engineer and Chief Architect of Moola.com Leaves Company

 

 

 

 

by Pavel Simakov 2007-12-31

Moola Welcome Page
Moola Gold Rush
Moola Ro-Sham-Bo Fu
Moola Hi Lo
Moola Charity Cashcow
3Genius Hotels-x

After spending 4 years as Chief Architect and recently CTO of 3Genius and Moola.com I have decided to leave the company. I enjoyed my work at 3G, our high profile Moola.com and under radar hotel products, but the most - the amazing engineering & product development team.

Moola.com is the largest distributed system that I have build so far. We have started in 2004 with absolutely nothing. After just 3 month with the help of AZ (now at IBM) and ME (still at 3G) we have reworked the core concepts of Web Service Definition Language into a new kind of agent-based middleware that Moola.com runs on currently. The new middleware we developed for Moola used exactly the same threading model and the symmetric sender-received design as my first middleware that runs for the last 10 years in pbviews (now divisions of Actuate). This time around, instead of making the remote calls between the nodes one by one, I have added the ability to pass an executable code between nodes, effectively creating an agent-based system. 

The cluster-aware transparently partitioned persistence layer and the object model could not have been possible without dedication of PY, now a law school student. I have no idea how he will use his expertise in generation-based replication and the distributed caching in court... We literally spent months polishing the API's, abstractions, thread confinement and package isolations - simply brilliant work in retrospect. This was my first time trusting an open-source database and I loved it. If only all open source products were this good!

The Moola.com players play a lot of games, a lot... The game engines took a while to get right. A domain specific language (DSL) was developed for the state transfer of each game, expressed in XML. IK (now a software Architect elsewhere) left his distinct mark here. You can see all of that by inspecting the HTTP traffic for game play. The graphics, animation and sound are all cutting edge, for which BK and SW take all the credit. Remember those JavaScript closures, guys. What's wrong with this?

The web framework was also a complete success. It does not use anything like Struts, but relies on fake continuations, expressed as Java inner classes. Not only the reuse and the flexibility we were able to achieve are simply phenomenal. We are able to use the full object orientation, inheritance and recursive composition for any/all of the Model, View or the Controller - try that with Struts or JSF. Funny enough, I built this web framework in early 2001 and it almost did not change till this day. I am sure KW is smiling reading these words...

Moola was not the only thing I enjoyed building at 3G. Some of our travel and hotel booking sites kicked some butt. We were the first folks to release Google Maps for hotel booking, credits to JavaScript skills of TL. There is much more to the hotel booking asynchronous invocation framework in the backend, but let this be untold, right Sereza!

My nick name on Moola is " God", which actually starts with a space. This is how I get listed ahead of all other players on the Forum page. You can join my Moola referral network by following this link: Join God of Moola. I hope I am still eligible to have  this account. Will see...

Maybe more than anything, ME has contributed to my technology leadership. Not only as mission critical system administrator and pragmatic engineer deep inside, he believed and supported my bold ideas. We spent hours debating various engineering decisions for the system. We looked at the best practices, managed risks, evaluated options and did research together. Being great writer himself, he personally spent hours correcting my writing and motivating me to write about software engineering. From the very first post in this blog, he always suggested great content and helped to polish the message. Together, we enlisted the Great People in Software Engineering, to which we all looked as inspiration when in doubt. He made me believe that we can build the systems on par with those mentioned there. Thank you.

Great people, great team, great product - great times... I miss all of you already...