Senior Software Engineer- Python
About US:
Foundation AI revolutionizes how law firms manage their incoming documents and case files. Our platform automates manual processes—capturing, classifying, and integrating documents into existing case management systems—so law firms can focus on delivering exceptional client service, not administrative drudgery. Top plaintiff firms nationwide trust Foundation AI for a more efficient, error-free workflow
We are a growing, mission-driven team passionate about using AI to bring transformative efficiency to the legal industry. We embrace diversity and inclusion, encourage open dialogue, and value a growth mindset. At Foundation AI, you’ll be supported by a team that values innovation, curiosity, and personal development.
Job Overview:
At Foundation AI, we are looking for a Senior Software Engineer to design, develop, and optimize high-quality software solutions. This role requires strong technical expertise, problem-solving skills, and leadership in driving best practices across the development lifecycle. You will work closely with cross-functional teams to build scalable and innovative applications. Should be an Excellent Problem solver and proficient coder, strong in Data Structures and algorithms. Should have Adaptability and willingness to learn new tools/languages. They should possess good communication skills as well as a positive attitude and a drive to learn.
Key Responsibilities:
- Software Development: Write clean, maintainable, and scalable code using the technology stack used across the company and list below.
- System Architecture: Design and implement robust, high-performance, and secure software architectures.
- Code Reviews & Best Practices: Ensure code quality through peer reviews, unit testing, and adherence to coding standards.
- Technical Leadership: Provide mentorship and guidance to junior engineers, fostering a culture of knowledge-sharing, and influence best practices at a team or organizational level
- Agile Development: Work in an Agile/Scrum environment, collaborating with product managers and designers to deliver features efficiently.
- CI/CD & DevOps: Implement and optimize CI/CD pipelines, cloud deployments, and automation strategies.
- Performance Optimization: Analyze and improve system performance, scalability, and reliability.
- Stakeholder Collaboration: Work closely with product and business teams to translate requirements into technical solutions.
- Security & Compliance: Ensure applications follow best security practices and industry compliance standards.
- Documentation: Maintain technical documentation for reference and future development
Required Technical Skills
Backend Development :
- Strong proficiency in Python as the primary backend programming language
- Hands-on experience with Flask and/or FastAPI
- Experience building and consuming RESTful web services
- Strong understanding of asynchronous processing using Celery
- Experience working with messaging systems such as RabbitMQ
- Solid knowledge of relational databases, specifically PostgreSQL
- Experience debugging and troubleshooting complex backend applications
- Understanding of object-oriented programming principles
Frontend Development
- Proficiency in HTML5, CSS3, and JavaScript (ES6+)
- Experience with modern frontend frameworks such as React, Angular, or Vue
- Experience with API integration and state management using Redux or Context API
- Understanding of frontend security concepts such as XSS, CORS, and CSP
- Knowledge of frontend performance optimization techniques including Web Vitals and Lighthouse
DevOps, CI/CD & Tooling
- Hands-on experience with CI/CD pipelines (GitHub Actions preferred)
- Experience with Docker; Kubernetes knowledge is a plus
- Proficiency with version control systems such as Git
- Experience with unit testing, code coverage, and code quality tools
- Familiarity with logging and observability tools such as ELK, Datadog, New Relic, or Splunk
Engineering Practices & Collaboration
- Strong experience working in Agile/Scrum environments
- Ability to provide accurate task and feature estimations
- Experience creating Low-Level Design (LLD) and High-Level Design (HLD) documentation
- Strong problem-solving and critical-thinking skills
- Excellent communication skills and ability to clearly explain technical decisions
Must Have
Backend-focused engineer with Python as a core strength
Strong ownership mindset and ability to deliver end-to-end features
Passion for learning new tools and technologies
Positive attitude with a collaborative and mentoring approach