Software Engineer - Backend
Builds and maintains scalable backend systems including REST APIs, microservices, data processing, and distributed task systems using Node.js. Requires Bachelor's degree, experience with web apps, distributed systems, and Postgres; emphasizes code quality, security, and best practices.
About the job
Responsibilities
- Design, implement or improve features in a variety of backend systems including our REST APIs, microservices, data ingestion and processing systems, and distributed task/job processing systems
- Write and maintain scalable, performant and secure code that can be shared across platforms
- Meaningfully contribute to the product and core backend systems by suggesting and executing improvements
- Improve engineering standards, tooling, processes and security
- Practice test-driven development
- Debug production issues across services and multiple levels of the stack
- Participate in on-call rotations, as needed, to ensure prompt and effective resolution of critical technical issues
- Utilize OWASP top 10 techniques to secure code from vulnerabilities
- Maintain awareness of industry best practices for data maintenance handling as it relates to your role
- Adhere to policies, guidelines and procedures pertaining to the protection of information assets
- Report actual or suspected security and/or policy violations/breaches to an appropriate authority
Requirements
- Bachelor's Degree in computer science or a related field
- A few years of experience building web applications
- Experience or a strong interest in writing applications in Node.js
- Experience implementing highly-available distributed systems/microservices
- Experience building scalable backend APIs
- Experience working with relational databases, Postgres preferred
- Understanding monitoring and alerting platforms is a plus
- Strong belief in high code quality, automated testing, and other engineering best practices
- Attention to detail and a passion for correctness
- Comfortable learning new technologies and systems
- Strong interpersonal and communication skills with a bias towards action
Skills
Node.js, REST APIs, Microservices, Postgres, Distributed Systems, Relational Databases, Owasp, Test-Driven Development, Monitoring, Alerting Platforms
Similar jobs
Backend Engineering jobsSupports development of secure, scalable data movement and distributed systems across hybrid cloud and ground-station infrastructure. The internship is intended for a current computer science or software engineering student with programming and networking interests.
Build and scale high-performance backend APIs and real-time data-processing systems for fraud detection. The role requires at least 2 years of backend experience with Go and/or Node.js, plus expertise in scalable systems, APIs, databases, and microservices.
Build real-time video-streaming pipelines, simulation frameworks, and cloud communication systems for a vehicle teleoperations platform. The role requires C/C++ or Go, networking expertise, and a Computer Science degree, with 2+ years of relevant experience for BS/MS candidates.
Build large-scale search infrastructure, crawling systems, and vector databases as an engineering intern. The role requires current technical study, full-time in-person availability in San Francisco, and experience with a high-performance language such as C++ or Rust.
Build and maintain backend services, APIs, and data pipelines supporting a mission-critical flight safety platform. The role requires at least two years of backend experience or equivalent project-based experience, with proficiency in a modern backend language.