/ Careers

/ Careers

Who we are and why you want to join us!

Who we are and why you want to join us!

Who we are and why you want to join us!

Who we are and why you want to join us!

Our team is dynamic, loves challenges, and builds production applications that delight customers. We are based in Ontario, Canada.

We solve business problems in code and team up with customers to design best in class products.

Our team is dynamic, loves challenges, and builds production applications that delight customers. We are based in Ontario, Canada.

We solve business problems in code and team up with customers to design best in class products.

Our team is dynamic, loves challenges, and builds production applications that delight customers. We are based in Ontario, Canada.

We solve business problems in code and team up with customers to design best in class products.

Who are you?

Who are you?

Who are you?

Who are you?

We are seeking a specialist to ensure the effective and responsible use of GenAI tools for coding, aimed at enhancing productivity while maintaining accuracy and security.

Key Requirements:

Polyglot Developer: Proficient in at least three programming languages, including Python and any of the following: C++, Rust, Go, JavaScript.

  • Give us your thoughts on Mojo.

  • What are your thoughts on using GPT for coding? How do you use GPT for coding?

Data Analytics Expertise: Minimum of 5 years of experience building high-performance data analytics platforms in the cloud.

Exceptional Math/ML Skills: Strong foundation in mathematics and machine learning for developing decision algorithms that drive actionable insights.

  • How have you used ML algorithms to classify, recommend, or create insights in the context of business data?

  • What industry domains have you mastered?

Data Transformation Tools: Strong SQL skills with experience in DuckDB (https://duckdb.org/) and familiarity with data pipeline tools like dbt, DLT tools, Meltano, or similar.

  • Proficiency in advanced SQL operations using DuckDB, including pivot/unpivot, union, group/grouping sets, and leveraging CTEs (Common Table Expressions) and window functions for complex data transformations.

Linux Proficiency: Proven skills in Linux and experience managing cloud-based software in AWS.

Database Experience: Hands-on experience with Redis and/or Valkey, with a focus on caching, streams, and pub-sub patterns.

Real-Time Application Development: Skilled in building asynchronous and real-time applications using socket or web-socket programming.

Observability: Strong experience with metrics collection using Prometheus, and logging, traces, and spans through Grafana with OpenTelemetry for comprehensive system monitoring.

Developer and DevOps Workflow: Deep understanding of the Git Workflow for both development and DevOps processes.

  • How did you use Kuberenetes to achieve high-performance scaling of database jobs?

Scalability Testing: Extensive experience in scalability testing, ensuring systems perform optimally under heavy loads and high concurrency.

Examples of Decision Analytics Algorithms

Optimization Algorithms:

  • Linear Programming (LP): Optimizes resource allocation under constraints (e.g., minimizing costs or maximizing profits).

  • Genetic Algorithms: Used for complex decision-making problems, such as supply chain optimization or route planning.

Classification Models:

  • Logistic Regression: Predicts binary outcomes (e.g., customer churn, fraud detection).

  • Decision Trees and Random Forests: Classify data points into categories or predict outcomes based on decision rules.

Clustering Algorithms:

  • K-Means: Groups similar data points for segmentation (e.g., customer segmentation).

  • Hierarchical Clustering: Used for identifying relationships within data hierarchies.

Recommendation Algorithms:

  • Collaborative Filtering: Suggests items based on user preferences (e.g., product recommendations).

  • Content-Based Filtering: Recommends items similar to what a user has already interacted with.

Forecasting Models:

  • Time Series Models (ARIMA, LSTM): Predict future trends, such as sales forecasts or demand projections.

  • Bayesian Networks: Models uncertainty and predicts probabilities based on prior knowledge.

Game Theory Models:

  • Optimizes strategic decisions in competitive environments (e.g., bidding strategies, resource competition).

Markov Decision Processes (MDPs):

  • Solves decision-making problems where outcomes are partly random and partly under control (e.g., robotic path planning, inventory management).

Reinforcement Learning:

  • Learns optimal policies in dynamic environments by maximizing cumulative rewards (e.g., autonomous driving, stock trading).


What to Expect from a Math-Data Developer

  1. Understanding Foundational Elements

    • As a solid math developer you know theoretical foundations (linear algebra, probability, calculus, and statistics) that underpin ML algorithms.

    • You don't need to memorize definitions but should understand:

      • Core principles (e.g., how linear programming optimizes constraints).

      • Applications (e.g., when to use a decision tree vs. logistic regression).

      • Trade-offs (e.g., clustering algorithm choice based on dataset size).

  2. Ability to Implement Algorithms

    • As a math-data developer should be able to:

      • Write code to implement these algorithms from scratch for deeper understanding.

      • Use libraries and frameworks (e.g., scikit-learn, TensorFlow, or PyTorch) to apply these models efficiently in practice.

  3. Practical Skills

    • You should know how to preprocess data, select features, and apply the right algorithm to solve real-world problems.

    • Foundational tools:

      • Writing optimization problems in Python using libraries like cvxpy or PuLP.

      • Implementing machine learning models (e.g., logistic regression, clustering) in libraries like scikit-learn.

Foundational Elements to Avoid Memorization

As a senior math-data developer you need to memorize definitions but should:

  1. Understand Commonalities Across Models:

    • Many algorithms boil down to:

      • Optimization problems: Minimize/maximize a function under constraints.

      • Similarity/distance metrics: Used in clustering or recommendation algorithms.

      • Probabilistic reasoning: Core to Bayesian networks and Markov models.

      • Sequential decision-making: Found in reinforcement learning and MDPs.

  2. Build from First Principles:

    • Learn foundational topics:

      • Linear algebra (e.g., matrix operations for ML models).

      • Probability and statistics (e.g., likelihood estimation in Bayesian methods).

      • Dynamic programming (underpins reinforcement learning and MDPs).

  3. Leverage Frameworks While Understanding the Math:

    • Libraries abstract complexity, but knowing the why behind the code is critical for debugging and optimization.

Can you Code These Algorithms?

  • Core Algorithms: how to code foundational models like linear regression, logistic regression, decision trees, or k-means clustering.

  • Advanced Algorithms: For models like LSTMs, Bayesian networks, or genetic algorithms,do you understand the math and implementation trade-offs but might rely on frameworks or libraries for real-world deployment.

  • Optimization Problems: As a strong math developer should know how to formulate and solve optimization problems using tools like cvxpy or scipy.optimize.

Conclusion

  • Solve specific problems with exceptional problem-solving and problem-stating skills - everything starts with the problem statement

  • Understand the mathematical principles behind ML methods and GPT.

  • Be able to implement foundational algorithms and adapt them to problem-specific scenarios.

  • Use tools and libraries to handle advanced algorithms efficiently, focusing on customization rather than reinventing the wheel.


Job Openings

Job Openings

Job Openings

Job Openings

Full-time

Full-time

Full-time

Platform Developer

Remote

Platform Developer

Remote

Platform Developer

Remote

Platform Developer

Remote

Infrastructure Engineer

Remote

Infrastructure Engineer

Remote

Infrastructure Engineer

Remote

Infrastructure Engineer

Remote

UI Developer

Remote

UI Developer

Remote

UI Developer

Remote

UI Developer

Remote

Data Engineer

Remote

Data Engineer

Remote

Data Engineer

Remote

Data Engineer

Remote

Automation Engineer

Remote

Automation Engineer

Remote

Automation Engineer

Remote

Automation Engineer

Remote