Normal axial cover photo

Axial

New York, NY axialcorps.com
   
 
   
 

About Axial Engineering

The Axial Corps of Engineers is a team of technologists dedicated to pragmatically and predictably shipping innovative software. Axial’s mission is to connect the entrepreneurial economy to help companies succeed. The software we build empowers entrepreneurs worldwide to connect with the capital and specialized advice they need to grow, finance or sell their business. We strive for excellence both in our software and as a team, from our automated build system to our increasingly modular front-ends, from transparency in communication and data-accessibility to painless product planning and great delivery forecasting.

Small joe crobak Joe Crobak on

Building a Data Pipeline from Scratch

Big data processing with Apache Hadoop, Spark, Storm and friends is all the rage right now. But getting started with one of these systems requires an enormous amount of infrastructure, and there are an overwhelming number of decisions to be made. Oftentimes you don't even know what kinds of questions you can or should be answering with your data.

As a first step, Joe Crobak (Software Engineer, Project Florida) describes the types of problems that people typically solve with a data pipeline—things like A/B testing and data warehousing. Then, drawing from his personal experience of building data tools at Foursquare and a from-scratch data pipeline at a new startup, he'll highlight the key questions to ask and best practices you should implement to encourage success.

57:54

This talk was presented at the Axial Lyceum in NYC.

Small a1b23483ec39d1c168ca648fdc76e074 bigger Sandeep Jain on

Upcoming Tech Talks - A deep dive into online ad auctions and systems - 3/25/14

The Gist: Ever wonder why you keep getting ads for Budweiser when you're clearly a Coors aficionado? In this Lyceum, Sandeep Jain, technical advisor at Axial, will dive into the algorithms and systems that decide how online ads are delivered on the internet. Never again will you wonder why you're being hawked bad beer. This Lyceum will mix behavioral economics, game theory, distributed systems, and graph theory into one fun and informative talk.


Click here to register for the event


Speaker Bio: Sandeep is currently a technical adviser to Axial. Before that, he cofounded Reschedge, a SaaS enterprise recruiting tool which was recently sold to Hirevue. He started his career at Google where he spent 5 years working on Google Maps and Doubleclick products. He finished his career there as the technical lead of the display advertising backend.

Small thomas meimarides Thomas Meimarides on

The Story of Project Falcon

In early December, we held our first ever hack-day. Each product manager teamed up with one to two engineers for the day to think up and develop any idea that they wanted. At the end of hack-day, each team then presented their concepts, demoed the results, and explained how they thought their hack improved the application.

On the morning of hack-day, my partner Jeff Rand and I holed up in a corner of the office with a hearty breakfast of pancakes, bacon and eggs and quickly came up with a list of about 10-15 ideas, from improvements that we knew Members or our Sales team had asked for, to improvements to the codebase that we knew needed attention. We had two basic requirements:

Small ben holzman Ben Holzman on

Upcoming Tech Talks: Axial - Having Fun With WebGL by Ben Holzman - 2/25/2014

About this talk: WebGL is a new web standard that allows javascript code to control your computer's graphics hardware, making it possible to create stunning animated 3D games and applications in the browser without the use of proprietary technologies like Flash or Silverlight. This exciting technology is very powerful, but also can be a little daunting if you're not familiar with OpenGL or how the programmable pipeline inside your graphics card works.

In this Lyceum, Ben Holzman will take us on a brief tour of the basics of 3D graphics programming and tip a toe or two in some deeper waters, like what a quaternion is and what it has to do with computer graphics. Then he will introduce the three.js library which makes it much, much easier to create an animated 3D scene than just using raw WebGL.

Ben will finish by demonstrating how to use three.js to make a 3D animated version of the Axial logo.

Click here to register for the event

Small steven fusaro Steven Fusaro on

Pytest – Testing Axial-Style Part 3

Selenium and the Page Object Model serve as building blocks for our testing suite at Axial. But we’re missing the glue that connects it all together: pytest. Pytest is a popular alternative to python’s built in unittest framework offering many highly useful features unavailable in unittest. Our favorite features include:

1, Test collection and execution

2, Fixtures and hooks (setup/teardown on steroids)

3, Reporting

To demonstrate pytest we’ll take a break from selenium and focus on sharing resources among test cases. In this demo we’ll write a pytest plugin for a hypothetical testing suite where the majority of test cases connect to our AMS (Axial Messaging Service) API. Wouldn’t it be nice if all our tests made use of the same session key and API connection? Not always, but for this demo the answer is yes.

Small screen shot 2013 12 16 at 11.22.07 am Matt Story on

Best DevOps Practices: Axial

Hi all! We're continuing our Best Practices interviews with companies that are known for their innovative approaches in "DevOps." The second short interview is with Matt Story, Director of Engineering at Axial.

"Devops" is a term loosely thrown around these days. What does it mean to you?

DevOps is a holistic programatic approach to systems engineering and operations that emphasizes programmatic solutions for provisioning, deployment, configuration management and testing rather than doing it by hand.

What's the most important thing an engineering organization can do to cultivate 'systems thinking' in its engineers? 

We try to educate every engineer on the strengths and weaknesses of their underlying operating system and hardware. To make sure we're hiring engineers with a systems focus, we always ask systems questions of candidates, and place a high premium on a solid understanding of UNIX systems for every role.

One other thing we've found key is to require each engineer to package their own software before it's "done". This means that the automated build/deploy is everyone's responsibility, and means you can never "throw it over the fence" to someone in ops.

Small steven fusaro Steven Fusaro on

Selenium for Automation – Testing Axial-Style Part 1

The challenge with testing is no different than most: allocating resources. Its hard to sacrifice resources for testing at the cost of new features and still feel a sense of accomplishment – especially when such a sacrifice needs to be made every time you release. At Axial we release every day and have come to realize that such sacrifices need to be made consistently in order to maintain a top quality product. We recognized the need to make our testing efforts more reusable. We accomplished this by doing what the corpus does best: build. From this we built Axium, a test automation suite that is easily executed, understood, maintained and configured. This is the first of a series of posts that shows how we built Axium and contains the following independent parts:


Small screen shot 2013 12 16 at 11.22.07 am Matt Story on

Don’t Slurp: How to Read Files in Python

no-slurping


A few weeks ago, a well-intentioned Python programmer asked a straight-forward question to a LinkedIn group for professional Python programmers:
What’s the best way to read file in Python?

Invariably a few programmers jumped in and told our well-intentioned programmer to just read the whole thing into memory:
f = open('/path/to/file', 'r+')

contents = f.read()

Just to mix things up, someone followed-up to demonstrate the exact same technique using ‘with’ (a great improvement as it ensures the file is properly closed in all cases):
with open('/path/to/file', 'r+') as f:

contents = f.read()
# do more stuff


Either implementation boils down to the use of a technique we call “slurping“, and it’s by far the most common way you’ll encounter files being read in the wild. It also happens to nearly always be the wrong way to read a file for 2 reasons:

  1. It’s quite memory inefficient

  2. It’s slower than processing data as it is read, because it defers any processing done on read data until after all data has been read into memory, rather than processing as data is read.


Small screen shot 2013 12 16 at 11.22.07 am Matt Story on

Upcoming Tech Talks: Axial - "The File System is Web-Scale" by Matt Story - 12/17/2013

About the talk: NoSQL databases seem to be everywhere you look these days, whether it's 10gen becoming MongoDB, AWS exposing DynamoDB as a service, or a heated argument overheard at a meetup pinning Riak against Voldemort. In all the hubbub, there is one key-value store replete with name-spacing support, backed by an open standard and supporting a robust and battle-tested authorization scheme that is consistently overlooked -- POSIX filesystems.

In this Lyceum, Matt Story will start by introducing the UNIX system calls for file I/O and manipulation. Using the knowledge we've gained at the OS level, we'll then cover the higher-level interfaces for different kinds of files provided by python, learning how to work with the file-system optimizing for both performance and readability, debunking the myth that the file-system is not fast, scalable or easily distributed.

Matt will end by tying together the concepts we've learned so far with a live demo of Axial's file-system backed message queueing library fsq.

Click here to register for the event

Speaker Bio: Matt is currently Director of Engineering at Axial, where he built fsq as a general-purpose replacement to RabbitMQ, which was both a single-point-of-failure and provided lack-luster introspection and debugging capabilities. Prior to Axial, he collaborated on several specific file-backed message queues as an engineering lead at Tablet.

Join Us