We are seeking a Senior Associate Backend Software Engineer to join the Labs software engineering practice. This role is integral to developing top-tier talent, setting engineering best practices, and evangelizing full-stack development capabilities across the organization. The Senior Associate Backend Software Engineer will play a key role in turning AI concepts into products, working closely with product managers and AI and software engineers and architects. This is a hands-on, cross-functional role that blends modern software development with AI integration in a rapid innovation and prototyping operating model.
Roles & Responsibilities:
- Design, develop, and maintain microservices using Python to ensure the software is modular, scalable, and maintainable.
- Create and manage RESTful APIs to facilitate seamless communication between different software components and external systems.
- Apply software engineering best practices by participating in code reviews, writing unit tests, and contributing to continuous integration and deployment.
- Contribute to building and deploying applications with Docker, ensuring consistency across environments.
- Design, develop, and maintain database schemas, ensuring efficient data storage, retrieval, and manipulation.
- Work closely with product managers, designers, and other engineers to deliver high-quality software solutions that meet business requirements.
- Identify and resolve software issues and bugs promptly to ensure smooth operation and minimal downtime.
- Stay updated on new technologies, industry trends, and best practices in software development, especially in areas like UI and AI, and be open to learning relevant skills.
- Promotes code quality through reviews, static analysis tools, and adherence to team standards and best practices.
- Collaborate effectively with peers, contributing to a supportive and growth-oriented team environment.
Functional Skills:
- Good hands-on experience with Python, with the ability to design and develop complex backend systems, integrate with data sources, and follow modern development practices.
- Deep understanding of software engineering best practices and overall software product development lifecycle, including version control, CI/CD, TDD, and agile methodologies.
- Strong grasp of OOP, design patterns, and clean code principles with a focus on maintainability and testability.
- Proficiency with Python-based backend frameworks, preferably FastAPI or Flask.
- Experience with databases (Postgres/DynamoDB)
- Experience with versioning tools like Gitlab, Bitbucket or GitHub
Good-to-Have Skills:
- Familiarity with JavaScript or typescript and modern web technologies, including React, Angular, and Node.js
- Familiarity with enterprise software systems in life sciences or healthcare domains.
- Basic understanding of big data platforms and experience in data pipeline development (Databricks, Spark).
- Experience managing and deploying infrastructure in at least one cloud provider such as AWS (preferred), Azure, or Google Cloud.
- Experience with microservices architecture and containerization (Docker, Kubernetes).
- Experience managing and deploying infrastructure in at least one cloud provider such as AWS (preferred), Azure, or Google Cloud.
- Basic understanding of any ORM framework like SQLAlchemy.
- Knowledge of data security, privacy regulations, and scalable software solutions.
Soft Skills:
- Strong communication skills to work effectively within cross-functional teams.
- Ability to foster a collaborative and innovative work environment.
- Strong problem-solving abilities and attention to detail.
- High degree of initiative and self-motivation.
Basic Qualifications:
- Bachelors degree in Computer Science, AI, Software Engineering, or related field.
- 5+ years of experience in software engineering, with a strong focus on backend software development using Python.