As our team and codebases grow, we need senior developers to comb through our code for consistency, readability, scalability and maintenance.
Maybe you have worn job titles like architect or lead developer. Maybe you just tend to become the technical expert wherever you go. Regardless, you have no fear of brownfield development. You enjoy spinning lead into gold. Youre an expert at refactoring and writing unit, integration and functional tests and know when to stub, when to mock. You like consistency in code and eat design patterns for breakfast, but not in a snobby, ivory tower kind of way. Youre also comfortable working with an opinionated team, looking for consensus, building bridges, giving (and taking) constructive criticism. You are willing to eat your own dogfood too, using the solutions youve suggested to others in your own code.
WHAT YOULL BE DOING
Refactoring code, solving scaling issues, breaking things into microservices, refactoring to patterns, writing tests. All this in Ruby, NodeJS and maybe Elixir.
REQUIRED SKILLS FOR APPLICATION DEVELOPER:
At least 5 years of Web Development work part of which is using some sort of server side language and MVC framework such as Ruby on Rails, Django, etc.
Strong OOP / OOD skills. Enjoys writing clean, dry code. Might know a design pattern or two.
TDD and/or some background in writing automated unit and integration tests
Relational Databases and SQL
Good communication skills and plays well with others
A ravenous curiosity
NICE TO HAVES:
Ruby, Ruby on Railsour primary development platform. We dont require you to already know it, but youll have to become comfortable with Ruby and Rails.
Redis or other NoSQL solutions
Resque or similar background processing frameworks
Concurrency / Multi-threading
TDD/ BDD, RSpec, Jasmine
Design Patterns / Domain Driven Design
Functional Programming languages, especially Elixir or Erlang.
Development in any other languages: Python, Java, R, Clojure, C/C++, etc.