aronahl

Valid XHTML 1.0 Strict

Valid CSS!

About aronahl

Aronahl, LLC provides consulting and domestic outsourcing services, specializing in developing high-performance back-end processes using advanced software engineering, virtualization, and cloud computing.

Aaron Nall formed Aronahl, LLC in 2009 to provide cost-effective alternatives to expensive hosted solutions, high-maintenance colocation environments, and back-end solutions that collapse under moderate or heavy load.

Experience

Aaron Nall

Aaron has almost twenty years of experience delivering enterprise-class solutions for problem domains from Interactive Voice Response to back-end search engines and B2B insurance web sites.

Cloud Technologies and Virtualization

Aaron has direct cloud experience with Amazon EC2, Citrix Xenserver, Oracle Compute Cloud, Rackspace Cloud, and Eucalyptus. Additionally, he has made extensive use of Containerization using Docker.

  • Using Fedora instances in EC2, he constructed an emergency production environment when his employer's colocation contract was about to terminate before the system administrators had prepared the new environment. To minimize storage costs, he created a unified machine image that used startup parameters to determine which application it would host. During boot, the virtual machines started up the appropriate subset of services, configured the appropriate web applictions and databases, and took ownership of the appropriate IP addresses. Having a multiple month operating cost lower than the cost of migrating the applications back to physical machines, this environment served customers around the clock for nine months.

  • Using Ubuntu in EC2, he constructed a testing and development environment for a cluster of search machines. Upon startup, a given group of machines would check out the latest code, install all of the required Libraries, build the code, and patch the settings on each machine to configure a unified cluster. The machines would then reboot and start up as a fully-functioning search cluster. He replicated this featureset on native hardware using PXE boot and with Ubuntu Enterprise Cloud (Eucalyptus).

  • Using Windows Server in EC2, he constructed a distributed load test for the search engine. The load test automatically selected one user for each machine, started the test, and provided live screenshots of running tests to a monitoring dashboard.

  • He routinely uses Xen, Parallels, and VMWare products (Server, Fusion, etc.) for development, testing, and production.

Search Technologies and High-Performance Java/Python

Aaron has worked for four years on various search solutions largely based on the Lucene libraries available from the Apache Foundation.

  • Aaron's initial work in search technologies involved adding a RESTful Web Service layer around Apache's Luene libraries. The result was a search server that could index and search arbitrary data with minor code customization. He also created a Java Servlet/JSP front end that read the back end's descriptor and automatically adjusted its behavior to match the back end customizations.

  • His next body of work involved customizing Apache's Nutch web search product to allow pushing of data (rather than pulling) Python web services and custom Nutch plugins. He also created a Java application server to allow exising code intended for searching a small number of indexes to run concurrently in a single Java VM, minimizing the combined footprint. The application server intercepted normal Nutch process termination and, using custom thread pools and class loaders, freed up all resources. This solution has been shown capable of running for months without memory issues.

  • Aaron has made radical performance improvements to various Java applications. A particulary notable example involved replacing an overarchitected EJB persistence layer with a custom high-performance DAO layer, increasing throughput 36 times. In another case, he reduced a database load that had been taking multiple hours to complete for over a year to complete in less than five minutes over a slow WAN by adding a small caching layer.

References

  • I had the pleasure of working with Aaron for approximately four years. I have been in the software industry for 18 years and I have never met anyone who could develop robust, elegant solutions as quickly as Aaron. He has incredible insight into the essence of a software problem and rapidly develops a concise solution. He is passionate about software development; as a result he immerses himself in the newest technologies, swiftly becoming proficient in them. He has bull-dog determination when tracking down and resolving software bugs, often taking an innovative approach to isolate the problem. He relishes tackling the difficult problems, viewing each as a personal challenge, confident he will resolve it. Aaron has extremely high personal and professional integrity, doing whatever it takes to produce his solutions on time.

    Jon Murphy, Tech Lead at Humanizing Technologies

  • Aaron is one of the most talented developers/architects that I've had the pleasure to work with.

    Dennis Trusty, Partner at Nimblesoft LLC

  • Quite simply, Aaron is one of the most brilliant, creative, and talented developers I have ever had the privilege to know.

    Artie Sluka, Tech Lead at Humanizing Technologies

  • Aaron's willingness to devote the time necessary for the project at hand, along with his ability to see solutions where no one else can, and then develop towards those solutions, is amazing. He is one of the most intelligent, hardest working people I have ever had the pleasure of working with. The depth of his knowledge spans more than just programming languages. He understands systems and their operations, as well. He has the unique ability to understand issues from both the technical and non-technical viewpoints

    Eric Bailey, Network Administrator at PGT Industries

  • The judges singled out Aaron Nall's entry for its design. ... The code for Nall's entry was "beautiful," ... "The object tree made sense, and the design is wonderfully extensible. Every object controlled its own behavior, knew its point value, and managed its own rendering. The design made it easy to enhance the game without any changes to existing code".

    JavaWorld

Contact

Email: ajn__at__aronahl__dot__com

Jabber: ajn__at__aronahl__dot__com

Voice Mail: 317-644-6791

LinkedIn: http://www.linkedin.com/in/aronahl