Full Stack Software Engineer (Artifical Intelligence)

Quantitative Systems
Washington, DC
Oct 16, 2019
Oct 19, 2019
Full Time
Full-Stack Software Engineer Washington, DC The Position We are seeking a full-stack developer, who will wear many hats. Some key challenges will include: Coding complex algorithms for fast, reliable execution Structuring queries against large, heterogeneous datasets Working with UX designers and JavaScript techniques to produce highly-performant, informative, and beautiful user experiences Evaluating and instilling best practices into the development process, including automated testing, code organization and style, and application architecture within an agile development environment Evaluating potential new technologies Understanding and deploying technologies to ensure operational redundancy and security The Successful Candidate A successful candidate will have at least several years of professional development experience, and be comfortable in a fluid, entrepreneurial environment. He or she will likely have many of the following characteristics: Server, network, and hosting environment expertise Understanding what can break and why, taking no resource for granted. Appropriate use of the file system, cloud storage, network resources, and an understanding of data redundancy and availability Understanding application scaling given hardware constraints Data modeling expertise Building the data model as the foundation of an efficient stack that doesn't require excessive logic layer complexity as the application grows Creating a thoughtfully normalized relational model, complete with foreign keys, indexes, views, lookup tables, etc. Using various relational and NoSQL databases as appropriate Expertise integrating complex business logic into production applications Understanding the economic value the application provides and relating this to trade-offs in designing the logic layer Very strong object-oriented skills Using frameworks extensively without excessive indirection Polyglot approach to development languages Interface expertise Writing clear, consistent, simple-to-use interfaces. Teaming with designers in an iterative process Ideally, mastery of JavaScript Development process expertise Writing and using intelligent tests Understanding of repeatable automated processes for building the application, testing it, documenting it, and deploying it at scale. Integrating security everywhere, as each layer presents its own possible vulnerabilities

Similar jobs