FULL STACK ENGINEER

 
Uploaded by Envato Mexico HR on 2019-03-20.
 

General Details

Position title: Full Stack Engineer

Reports to: CTO

Hi - we, at Placeit have a need to hire 2 backend or full stack engineers.

We run a tool called Placeit used by hundreds of thousands of clients around the world. We serve over 2 million users world wide and we process a transaction every 2 minutes.

We also run several other products used by some 8 million people around the world but we’ll cover that later. We’ve just begun our expansion plans and would like you to be a part of it. We current have 190 people in our offices in Guadalajara but our engineering team is fairly small (20 people).

cross-sell__placeit--2x.jpg

Our History

We started as an agency, called Freshout in 2008. We developed new products for companies such Yahoo, Telefonica, eBay. When we realized we couldn’t control the products we built through our clients, we started to invest in our own products. We bootstrapped our way to a product company in late 2014.

We’ve been profitable since the day we started so you don’t have to worry about us bleeding money and suddenly closing up shop because an investor pulled out.

All our staff including the CEO resides here in beautiful Guadalajara. We’ve been here for quite a few years and we don’t plan on leaving any time soon. We operate Placeit, Recordit and Empowerkit out of the same office.

This is not some satellite office where we send some of the “special” work. We invest heavily in the education and progress of each member of our team. We have full autonomy over what we build and there are no clients forcing our hand to build unnecessary features.

Placeit is used by everyone from Adobe to Yelp to Facebook to Google to Salesforce to IBM to Netflix. We’ve doubled in size over the past year and have thousands of paid subscribers.


Job Description

Key Duties

  • Create prototypes

  • Write technical specs

  • Journal your process

  • QA your work

  • Update tickets and keep work organized

  • Follow methodologies that the company provides

  • Write efficient software

  • Work with stakeholders to understand tradeoffs

  • Follow up on issues / errors on a regular basis

Required Skills (be familiar with the following)

  • HTML (different version) and their compatibilities.

  • CSS (different versions and techniques to apply effects and cross browser support), one or two CSS frameworks (LESS or SASS).

  • Component frameworks such as Bootstrap or Foundation.

  • JS: programming model in JavaScript / inheritance model, scoping, differences between the three major version of JS.

  • HTTP: how the protocol generally works and how browsers generally deal with it.

  • Web sockets and web workers.

  • Experience with AJAX libraries (jQuery is required and one of these three: Backbone, Angular or React).

  • Unix: bash, piping, SSH, tools (cat, awk, sed), basics of standard input/output

  • Basic principles of database design

  • Canvas / WebGL

  • Basic experience with ORM

  • Software Design Patterns

  • Functional Programming Principles

  • Event Oriented (including asynchronous) Programming

  • Object Oriented Programming

  • Prototype Based Programming

  • Coding Best Practice

  • Refactoring Best Practices

  • Test Driven Development

  • Possess a good understanding of the syntax of Ruby and its nuances

  • Solid understanding of object-oriented programming

  • Experience designing, building large-scale Ruby on Rails applications

  • Experience with common libraries such as RSpec and Resque

  • Proficient understanding of code versioning tools (e.g. Git, or SVN)

  • Proficient in bash shell

  • Familiarity with continuous integration and delivery

  • Basic familiarity with networking systems, load balancers, and TCP/IP network constructs.

  • Knowledge of performance and reliability monitoring strategies

  • A knack for writing clean, readable Ruby code

  • Able to create database schemas that represent and support business processes

Great to Have Skills

  • Be clever about how to approach problems

  • Be technically curious (learning on your own)

  • Have a serious interest in understanding the goal behind your work

  • Push for doing things the right way the first time around

  • Have empathy for our users

  • Know the basics of Photoshop

  • Any background in programming graphics or video games