Senior Software Engineer (Backend)
Position LocationLos Angeles
We are looking for an experienced backend software engineer to take on a senior role within our development team. The Senior Software Engineer will provide architectural and technical direction to help develop our internal microservices framework and backend infrastructure used to deliver mission critical financial systems.
Responsibilities include, but are not limited to:
- Maintain and enhance Crabel’s own API as a Service framework.
- Hands-on design and development, testing and implementation of new and existing trading infrastructure.
- Establish processes to enable successful delivery of software applications and systems.
- Drive technical design, data architecture and implementation of new features and iterations of core products.
- Manage technical project risks and issues; recognize and determine the appropriate corrective action to ensure projects are delivered on time and within budget and scope.
- Create and maintain technical project documentation to identify, evaluate, scope, plan, monitor, and follow up on the technical aspects of active projects.
- Mentor developers and members of other disciplines in technical skills and processes.
- A Bachelor's degree (or equivalent) in mathematical/technical sciences, preferably Computer Science or Computer Engineering
- 5 or more years of experience developing backend applications
- 3 or more years of experience developing services with Node JS
- Hands on experience thorough understanding of Typescript
- Proficient working with the Linux operating system for software development
- Understanding and experience with the implementation of multi-tiered and micro-service architectures
- Experience with databases (SQL Server) including Stored Procedure development is preferred
- Experience with test driven development and design patterns is preferred
- Able to design, architect and model complex systems
What you’ll need to be successful:
- Passion for the development of tools and services that enhance the development experience
- Desire to stay abreast of new technology
- Possess strong problem solving and decision-making skills
- Excellent communication skills, including the ability to communicate with non-technical users
- Self-motivated with the ability to multi-task and change from one task to another without loss of efficiency or composure