Skip to main content

When people talk about their technology stack, they usually mean which languages and frameworks they use, where their code is hosted, and how they operate it. Front and center in all of IZEA’s Engineering job postings is the phrase: “We write in whatever language we need to get the job done.” We really mean this and in this post I’d like to explain why.

IZEAx, our flagship product, is a Ruby-on-Rails application that sits on top of a Postgres database. The decision to begin building with an integrated software framework was made to help the team reduce the time to market. This has served us well, but the increased demand on our service, and our customer’s expectations has required us to evolve.

In the middle of 2015, we began the process of building an API layer into our Rails framework. This was done to support a Creator-focused iOS application. Since then, we have expanded the use of the API in a measured effort towards a “brown-field” Ember application. Our ability to parallelize development concerns has created a measurable increase in how quickly we can launch new capabilities. We look forward to continuing this effort through 2017, and when we finally delete the /views folder in our Rails repository, we’re going to throw a huge party.

There are many applications that work together to make up the IZEAx ecosystem, and all of them are hosted on Amazon Web Services. We like AWS because it provides instant scalability, predictable pricing, and the ability to focus on our customers. There is almost no corner of AWS that we don’t touch. EC2 and S3 are in the mix, but so is EMR for our data processing workloads, Kinesis for our stream processing needs, and Elastic Transcoder for video processing. We even use Cloud Formation and OpsWorks to simplify and stabilize deployments operations.

Just as we are migrating the front end of IZEAx to be a series of API consuming client applications, we are also working to break apart the core Rails code base into a set of services as it makes sense. In this effort we again are invoking AWS by leveraging ECS and ECR, Docker, and the new Application Load Balancers.

But wait, I never once talked about what languages we use! Sure, you can glean from the above that we are heavy into Ruby and client-side Javascript (and we are), but we also have production services written in Java, Python, and NodeJS. Some things run inside AWS Lambda, some run in ECR containers, others simply run on EC2. Some applications use an RDBMS for persistence, some use an OLAP database, others leverage the NoSQL nature of DynamoDB, and still others just rely on Redis. You can’t sleep on our iOS development in Swift.

Every project we do at IZEA, whether in Engineering or not, has unique requirements. We don’t restrict ourselves by saying “we run a LAMP or MEAN or Rails stack”. For everything mentioned above there are at least two more things not mentioned (like our passion projects around Rust, Scala, and PHP).

Chances are if you are looking for a technical challenge, we’ve got someone on the team who has experience with it. If you are interested in learning more about web and mobile applications, scalable infrastructure operations, big data & analytics, or anything in between, we want to talk to you.

Search our current openings.