Back-End Software Engineer (Python/FastAPI/PostgreSQL)
Location: Remote (Canada)
Employment Type: Full-Time Contract (4–6 Months)
Start Date: TBD
Compensation: Competitive hourly rate (to be discussed based on experience)
About EcoSpex
EcoSpex is a Canadian technology company developing digital solutions that advance sustainability within the construction industry. Our platform enables manufacturers, architects, engineers, and other industry professionals to manage and share trusted environmental product information through Digital Product Passports (DPPs), Environmental Product Declarations (EPDs), sustainability dashboards, and product data management tools.
We're looking for an experienced Back-End Software Engineer to help build the backend systems that power our platform. This is a hands-on development role where you'll contribute to production software, collaborate with an experienced team, and help solve complex technical challenges in a growing and meaningful industry.
** Please do not send resumes directly to EcoSpex Inc. Applications will only be accepted through Indeed. **
!!!! Before You Apply !!!!
This position is funded through a government-supported program. To be eligible, applicants must meet ALL of the following requirements:
- Canadian Citizen or legally authorized to work in Canada
- Eligible to work in Canada for the duration of the contract
- Graduated from a recognized post-secondary institution within the past 2 years
- Master's or PhD in Computer Science, Software Engineering, or a closely related discipline
- Strong experience with Python and backend software development
** Please do not apply if you do not meet these eligibility requirements. **
This is a contract role for an experienced engineer capable of contributing to production software with minimal supervision. It is not intended for entry-level or junior developers.
About the Role
You'll be responsible for designing and developing the backend services that support EcoSpex's sustainability platform. Working closely with our engineering team, you'll build scalable APIs, design efficient databases, implement secure authentication systems, and contribute to software architecture, testing, deployment, and continuous improvement.
We're looking for someone who enjoys solving technical problems, writing clean and maintainable code, and collaborating with others to build reliable software.
Key Responsibilities
As a member of the engineering team, you will:
- Design, develop, and maintain RESTful APIs using Python and FastAPI
- Build scalable backend services and business logic for production applications
- Design, manage, and optimize PostgreSQL databases and data models
- Develop secure authentication and authorization using OAuth 2.0 and JWT
- Create robust data validation models using Pydantic
- Write efficient SQL queries and implement database migrations
- Develop and maintain automated unit and integration tests
- Contribute to CI/CD pipelines and deployment processes
- Participate in code reviews and collaborative Git workflows
- Work within Agile/Scrum development practices including sprint planning, daily stand-ups, and retrospectives
- Produce technical documentation for APIs, system architecture, and backend services
- Leverage modern AI-assisted development tools (GitHub Copilot, Claude Code, and similar) responsibly to improve productivity while maintaining high-quality engineering standards
Required Technical Skills
Technical Skills
- Strong Python programming skills with experience developing APIs using FastAPI
- Experience with PostgreSQL, SQL, and relational database design
- Understanding of RESTful APIs, OpenAPI/Swagger, and HTTP protocols
- Experience with Pydantic, OAuth 2.0, JWT, and secure authentication practices
- Proficiency with Git and collaborative development workflows
- Familiarity with CI/CD, automated testing, and TDD/BDD principles
- Comfortable working in Linux/Unix environments
Professional Skills
- Experience working in Agile/Scrum development environments
- Strong analytical, problem-solving, and debugging skills
- Excellent communication and documentation abilities
- Organized, self-motivated, and able to manage multiple priorities
- Eagerness to learn and adapt to new technologies
Preferred Qualifications
Experience with one or more of the following is considered an asset:
- Docker and cloud platforms (AWS, Azure, or GCP)
- SQLAlchemy and Alembic
- FastAPI dependency injection, middleware, and background tasks
- Redis, RabbitMQ, or Celery
- OWASP security best practices
- Monitoring and logging tools
- Open-source contributions or significant personal backend projects
What Success Looks Like
In this role, you'll be successful if you:
- Deliver clean, well-tested, and maintainable production code
- Build secure and scalable backend services
- Collaborate effectively with teammates through code reviews and technical discussions
- Take ownership of features from design through deployment
- Continuously improve system performance, reliability, and maintainability
- Contribute ideas that help strengthen our engineering practices and product
Why Join EcoSpex?
Joining EcoSpex means becoming part of a team that's building technology with real-world impact. Your work will help improve transparency and sustainability across the construction industry while giving you the opportunity to work with modern backend technologies on meaningful production systems.
We offer:
- Interesting technical challenges with real business impact
- A collaborative and supportive engineering team
- Flexible remote work
- Opportunities to expand your technical skills
- Exposure to modern backend architecture and development practices
- Potential for future contract extensions or long-term opportunities based on performance and business needs
Application Requirements
Please submit the following:
- Resume
- Cover Letter
- GitHub profile (strongly preferred)
- Portfolio or links to relevant backend software projects (if available)
Shortlisted candidates will receive a comprehensive candidate information package containing additional details about the role, project objectives, engineering environment, team structure, technical expectations, and the interview process prior to moving to the next stage.
Hiring Process
- Application Review
- Technical Assessment (Python, FastAPI, SQL, and problem-solving)
- Technical Interview
- Team Interview
- Final Decision
We aim to complete the hiring process as efficiently as possible and typically communicate final decisions within one week of the final interview.
Equal Opportunity Employer
EcoSpex is committed to creating an inclusive workplace where diverse perspectives are valued. We welcome applications from all qualified candidates and are committed to providing an accessible and equitable recruitment process.
Pay: $28.00-$31.00 per hour
Benefits:
- Flexible schedule
- Work from home
Work Location: Remote