Principal Software Engineer
Thomson Reuters · New York, NY · 3 days ago
HybridInformation Technology$50/hrFull-time
About the role
This role is backend-leaning and involves designing and building scalable backend services and APIs that power Noetica's document analysis platform. You will also contribute to frontend features as needed.
Responsibilities
- Design and build scalable backend services and APIs
- Write maintainable, high-performance server-side code and data processing pipelines
- Define clear, efficient API contracts and contribute to service architecture decisions
- Design and craft compositional API primitives to expedite the productionization of document insights
- Build and maintain integrations with third-party services and internal ML systems
- Contribute to frontend features and components as needed to deliver features end-to-end
- Take ownership in engineering excellence and collaborate on code practices and design patterns
- Optimize backend performance for data-intensive backend operations
- Take ownership in developer experience by improving/automating CI/CD and other day-to-day production operations
Requirements
You should have:
- A Bachelor's degree in Computer Science, Information Technology, or a related field (or equivalent experience)
- 10-12 years of professional full-stack development experience with a strong focus on backend systems
- Proficiency in backend technologies (Node.js, Python, or Go) and API design
- A strong understanding of RESTful APIs, database design, and data modeling
- Familiarity with SQL and NoSQL databases
- Experience with containerization and orchestration platforms (Docker, Kubernetes) and hyperscalers (AWS, GCP, etc.)
- Proficiency in TypeScript and React for frontend work
- A foundation in distributed systems, event-driven architectures, and web fundamentals
- Strong communication and collaboration skills
- A self-starting problem-solving approach biased towards action and scope minimization
Qualifications
Preferred qualifications include:
- Experience with microservices architecture and message queues
- Experience building data processing pipelines or working with large-scale data systems
- Familiarity with object-oriented design and functional programming principles
- Experience optimizing backend performance for data-intensive applications
- Interest in language and economics
- The ability to thrive in a high-leverage, fast-paced environment
- Familiarity with technologies like monorepo, jujutsu, mise, pprof, etc.