Responsibilities
- Identify, prioritize and execute tasks in the software development life cycle.
- Work with business to iterate over software requirements.
- Develop tools and applications by producing clean, efficient code.
- Automate tasks through appropriate tools and scripting.
- Analyze and debug systems.
- Perform validation and verification testing in a test-driven manner.
- Review the work of others, and invite others to review your work.
- Collaborate with internal teams and vendors to fix and improve products.
- Ensure software is up-to-date with latest technologies.
- Work with distributed computing systems like Apache Hudi and Trino for big data processing.
Requirements
- Experience with distributed computing tools like Apache Hudi, Spark, Kafka, Flink, Beam, Trino, DataBricks and other big data technologies.
- Experience with distributed storage systems like ADLS, HDFS, S3, DLT etc.
- Familiarity with Hadoop, Spark, Databricks or other distributed computing systems.
- Understanding of data partitioning and sharding techniques.
- Knowledge of distributed computing principles and how they apply to large-scale data processing.
- Experience in writing clean code that performs well at scale using languages such as Python, Java etc.
- Knowledge of relational databases (e.g. Microsoft SQL Server, MySQL).
- Solid experience writing RESTful API endpoints.
- Absolutely love TDD and have working knowledge of it.
- Proficient in GIT.
- Experience using system and performance monitoring tools (e.g. New Relic, DataDog).
- Excellent organization, critical-thinking and personal leadership skills.
- Self-starter with the ability to deliver with minimal supervision.
- Being okay with the uncomfortable feeling that comes from learning new things.
- Team player.
- Analytical mind with problem-solving aptitude.
- Proven experience as a great Engineer.
- BSc/BA in Computer Science or a related degree.
Nice to Have
- Experience with distributed computing.
- Experience writing code/scripts in Python.
- Experience with Spring Boot.
- Nice to have React, Selenium automation and cloud experience.
- Experience with Docker, Kubernetes and Istio.
- Experience with Ansible.
- Experience with Jenkins CI/CD pipeline.
- Linux and IP networking knowledge.
- Experience with AWS/Azure cloud services or equivalent.
- Experience with SAML, OAuth and OpenID Connect.
- Experience working on a SaaS product.
- Experience with Service Oriented Architecture.
- Knowledge of scripting languages such as Python, Bash or Groovy.
- On-call experience with production grade systems.
- Has mentored others in a professional setting.
- Generative AI Code Assistants - Use of Generative AI Code Assistants (e.g. Github Copilot) and knowledge of latest Generative AI Model capabilities would be an asset.
Benefits
- Benefits starting from Day 1!
- Retirement Plan Matching.
- Flexible Paid Time Off.
- Wellness Support Programs and Resources.
- Parental & Caregiver Leaves.
- Fertility & Adoption Support.
- Continuous Development Support Program.
- Employee Assistance Program.
- Allyship and Inclusion Communities.
- Employee Recognition
Additional Information
- Travel to Office expectations For Remote Roles: If this role is remote, there will be in-office events that will require travel to and from the Mississauga and/or Salt Lake City office. These will include, but not limited to, onboarding, team events, semi-annual and annual team meetings.
- For Hybrid Roles: If this role is Hybrid, there will be an expectation to reside within commutable distance to the office/location specified in the job listing. This will include, but not limited to, weekly/bi-weekly/monthly events in the office with your specific team. This is a requirement for this role.