Python Software Engineer

CG Consulting Group
Toronto
CAD 100,000 - 125,000
Job description

Python Software Engineer

Our client is a Toronto-based IT consulting boutique that strives for excellence in customer service and delivery in the financial services and fintech industry. We are seeking exceptional software engineering candidates, someone who has successfully delivered large complex projects for Canadian or US banks. They focus on technology advisory, cloud computing, integration solutions, and enterprise big data and analytics. With a team of highly knowledgeable business and technical experts, we provide strategic, mission-critical solutions to our clients.

Perm / FT role.
Salary: Market rate + benefits and performance bonus
Hybrid work environment - mix of home, office, and client site - generally 3 days in-office/week
Company location: Downtown Toronto

We are seeking a highly skilled Python Software Engineer with expertise in application development and/or data engineering to join our dynamic team. The ideal candidate will be responsible for designing, developing, and maintaining efficient cloud solutions using Python and cloud SQL-based data platform, while leveraging Azure services and CI/CD practices to ensure seamless integration and deployment.

RESPONSIBILITIES

  1. Design and implement scalable, maintainable, and secure cloud solutions using Python, Azure services, and SQL-based data platforms.
  2. Develop all or part of the following:
    1. Data pipelines for efficient data extraction, transformation, and loading (ETL) using Pyspark, SparkSQL, or SnowSQL on Databricks or Snowflake platforms.
    2. Integration and optimization of Azure services such as Azure SQL Database, Azure DevOps, and Azure Active Directory.
    3. Migration of legacy Python-based application to server-based architecture (e.g., Docker/AKS).
    4. RESTful APIs to interface with external data providers, focusing on Azure API Management.
  3. Implement CI/CD pipelines to automate testing, deployment, and monitoring of applications.
  4. Collaborate with cross-functional teams to understand business requirements and translate them into technical specifications.
  5. Monitor and optimize cloud solutions for performance efficiency and scalability.
  6. Troubleshoot and resolve issues related to Python, SQL data platforms, and Azure cloud services.
  7. Stay updated with the latest technologies and best practices in cloud computing and software development.

REQUIREMENTS

  1. Bachelor’s degree in Computer Science, Engineering, or related field.
  2. A minimum of 5 years of experience in Information Technology, participating in complex development projects.
  3. Proficiency in Python and SQL: Strong knowledge of Python for data manipulation and querying using frameworks such as pandas.
  4. Data engineering: Experience in developing high-performing data pipelines using either Databricks or Snowflake and using Azure Data Factory for data extraction and data orchestration.
  5. Software Development: Proficiency in developing Python-based web apps or RESTful APIs using Django, Flask, FastAPI, Langchain, Azure API management, and SQL for database management.
  6. Experience with Azure: Familiarity with Microsoft Azure cloud platform, including Azure SQL Database, Azure App Services, Azure Functions, and Azure Active Directory.
  7. CI/CD Experience: Experience with CI/CD pipelines (using Azure DevOps, Jenkins, CircleCI, and GitLab Actions), version control, code organization, and testing practices.
  8. Cloud Computing Concepts: Deep understanding of cloud computing technologies and Azure services.
  9. Software Engineering Concepts: Good understanding of modern software engineering principles, best practices, and tools.
  10. Server-based Architecture: Experience with containerization and orchestration using Docker and Kubernetes in Azure.
  11. Problem-Solving Skills: Ability to troubleshoot and resolve issues related to cloud services and software development.
  12. Collaboration Skills: Strong communication and teamwork skills to work effectively across teams.
  13. Continuous Learning: Willingness to stay updated with the latest technologies and best practices in cloud computing and software development.
  14. Ability to thrive in a fast-paced environment and adapt to new technologies and challenges.

OTHER QUALIFICATIONS

  1. Experience with search solutions, particularly Azure AI Search.
  2. Experience with Copilot: Familiarity with Copilot tools and technologies for enhancing productivity and collaboration.
  3. Agile Methodologies: Experience working in an agile (Scrum or Kanban) framework.
  4. Mentoring: Ability to share knowledge and mentor junior team members.
  5. Analytical Skills: Strong analytical skills and a good understanding of data models.
Get a free, confidential resume review.
Select file or drag and drop it
Avatar
Free online coaching
Improve your chances of getting that interview invitation!
Be the first to explore new Python Software Engineer jobs in Toronto