Candidates should be experienced in building back end scalable services, familiar with designing database data tiers on top of relational SQL databases and fluent in web front end technologies. The ideal candidate will possess all those skills, plus experience with building high performance, high scalability and high availability websites.
BS/MS in Computer Science, Physics, Mathematics or equivalently technical disciplines.
5+ years of solid hands experience with Java or other OO languages (C++, Python, Ruby, etc…).
5+ years professional experience working on large scale distributed systems
Significant understanding of object oriented design, design patters, continuous integration/continuous delivery, Linux, coding best practices (TDD, DDD).
Solid Computer Science fundamentals in algorithm design, complexity analysis, problem solving and debugging.
Experience using Agile software development methodologies.
Excellent verbal and written communication skills.
Web service design experience: RESTFul APIs/Response handling, authentication.
Experience with at least 1 modern database, persistence frameworks, and SQL.
Exposure to developing multi-tier, scalable, and browser based applications. Cloud-based applications leveraging AWS is highly preferred.
Data modeling, schema design using a variety of relational (Oracle, MySQL) and No-SQL technologies (DynamoDB, MongoDB, CouchDB, Cassandra).
Experience with Agile development methodologies (Scrum/XP).