Samsung Ads is looking to add a Sr. Software Developer – Erlang to our Advertiser Platform – Gateway Delivery team.

About the team

Our team is responsible for managing, growing and optimizing product access to high-quality programmatic ads supply to effectively, intelligently and safely satisfy demand. Our tech stack includes a mixture of Erlang, Go, C, Linux, Concourse, Docker and Kubernetes.

We handle ~1,000,000 requests per second and over one billion per day across multiple data centers. We have a maximum of 100ms to parse an ad bid request, query our databases to find the most appropriate ad for that end-user, decide on our bid price, and respond. We manage an inventory of ~10,000 active ads for ~250 concurrent campaigns driving tens of millions of dollars in monthly revenue; generating ~600,000,000 ad impressions daily. We support ad operators from all around the world in multiple currencies and languages.

This role reports directly one of our Engineering Manager.

All of our employees are currently working remotely from home. In the future, this role will be fully remote based anywhere in Canada or hybrid based and will require a mix of working from our Montreal, QC and remote work. 

What you will do

As a Senior Software Developer – Erlang, you will be responsible for designing, building, deploying, and maintaining components in our distributed real-time bidding system, a system that gets a high volume of traffic. This involves measuring and tuning high-performance, low-latency (soft-real-time) systems while working towards improved robustness and correctness along with the following:

  • Maintain and improve existing services which includes actively trying to pay back technical debt and extending their functionality
  • Participate in the design, implementation and testing of new services
  • Investigate and fix performance issues throughout our systems which include our services, dependencies and kernel usage
  • Guide the direction of our technology stack to improve performance, scalability and maintainability
  • Mentor and grow the team through various channels (code review, talks, discussions, etc.)
  • Criticize and improve our development processes and methodologies
  • Contribute to open source software to improve our external dependencies
  • Flesh out and iterate on requirements in collaboration with the product team
  • Get involved in and participate actively in the Scrum ceremonies
  • Interest in mentoring, guiding and teaching junior developers; previous experience as a lead with direct reports, an asset

What you will need

  • 5 years of experience as a full-time software developer
  • 3 years of experience in programming with Erlang
  • Experience with linux OS; experience with linux kernel networking stack is an asset
  • Experience with distributed systems
  • Have a solid foundation in systems programming, computer science and software engineering
  • Collaborative spirit with a willingness to mentor others
  • Curious mind that enjoys building things and appreciating the craftsmanship in software
  • Strong reading, written and verbal communication skills in English; French is an asset 

Nice to Haves (assets):

  • Knowledge of/or experience in designing and building high traffic distributed systems is a plus 
  • Appetite for learning:
    • system design and architecture
    • advanced data structures (succinct, probabilistic, multidimensional, et cetera)
    • mechanical sympathy, data-oriented design (performance)
    • functional programming
    • agile methodologies such as Scrum
  • You enjoy reading code, and you’re in the habit of reading the source for your dependencies. 

 

Benefits

  • 100% company-paid comprehensive health & dental coverage (including massage and therapeutic care) as of Day 1. Access to an employee assistance program  and a virtual care platform (wellness, medical & nutrition).
  • Personal spending account & Healthcare spending account with Sun Life Life that can offer you personalized perks like home office equipment, spa treatments, green living, fitness equipment, music streaming services and more!
  • Up to 2000$ reimbursed for Mental Health Care
  • Generous RRSP Matching Program up to 5% 
  • Competitive compensation package, including performance incentive bonus plan based on company, team and personal objectives
  • Minimum 21 days of paid time off 

Perks

  • Virtual social committee-lead activities such as monthly wine club night, games night as well as wellness initiatives like virtual yoga and meditation, art therapy, aromatherapy classes
  • Access to learning and development opportunities (your own LinkedIn Learning license, Pluralsight, professional development program, continuing education and more)
  • Officevibe – anonymous feedback from our teams to know how you’re really doing and keep you engaged
  • Onboarding framework which ensures you’re set up for success from Day 1 to Year 1. This also includes a buddy program (someone who will be there for you) from Day 1
  • Amazing discounts through Samsung Employee Discounts website and access to Perkopolis website with great rebates, coupons and promotions
  • Summer Fridays
  • Generous  Employee Referral Program
  • Giving Back Program which includes donation matching & volunteering initiatives including one paid volunteer day

*certain benefits & perks apply to only full time permanent roles. Please ask TA for additional details.

 

Life at Samsung Ads

Samsung Ads is an advanced Advertising Technology Company in rapid growth that focuses on enabling brands to connect with Samsung TV audiences as they are exposed to digital media by using the industry’s most comprehensive data to build the world’s smartest connected audience platform. Being part of an international company such as Samsung and doing business around the world means that we get to work on big complex projects with stakeholders and teams located around the globe.

We are proud to have built a world-class organization, grounded in an entrepreneurial and collaborative spirit. Working at Samsung Ads offers one of the best environments in the industry to learn just how fast you can grow, how much you can achieve, and how good you can be. We thrive on problem-solving, breaking new ground, and enjoying every part of the journey.

Are you hesitant to submit an application because you’re not sure if you check every box? Apply anyway! We would love to hear from you and figure out what you can add to the culture here at Samsung Ads.

*Internal title is ‘Software Developer*

***

Samsung Ads est à la recherche d’un Développeur Erlang senior pour se joindre à son équipe – Advertiser Platform – Gateway Delivery.

À propos de l’équipe

Notre équipe est responsable de la gestion, de la croissance et de l’optimisation de l’accès aux produits à une offre d’annonces programmatiques de haute qualité afin de répondre efficacement, intelligemment et en toute sécurité à la demande. Nous sommes chargés de traiter plus d’un million de demandes d’enchères par seconde et plus d’un milliard par jour dans plusieurs centres de données.

Nous traitons environ 1 000 000 de requêtes par seconde. Nous avons un maximum de 100 ms pour analyser une demande d’enchère publicitaire, interroger nos bases de données pour trouver la publicité la plus appropriée pour cet utilisateur final, décider de notre prix d’enchère et répondre. Nous gérons un inventaire d’environ 10 000 publicités actives pour environ 250 campagnes simultanées générant des dizaines de millions de dollars de revenus mensuels; générant environ 600 000 000 d’impressions de publicités par jour. Nous soutenons les opérateurs publicitaires du monde entier dans plusieurs devises et langues.

Ce poste relève directement à un de nos directeurs de l’ingénierie.

Notre pile technologique comprend un mélange d’Erlang, Go, C, RUST, Linux, Concourse, Docker et Kubernetes.

Tous nos employés travaillent actuellement à distance depuis leur domicile. À l’avenir, ce poste sera entièrement basé à distance partout au Canada ou, si vous êtes situé à Montréal ou dans les environs, il sera hybride et nécessitera un mélange de travail à partir de notre bureau de Montréal, QC, et de travail à distance.

Ce que vous ferez

En tant que développeur de logiciels, vous serez responsable de la conception, de la construction, du déploiement et de la maintenance des composants de notre système d’enchères en temps réel distribué, un système qui génère un volume de trafic élevé. Cela implique de mesurer et de régler des systèmes hautes performances et à faible latence (temps réel doux) tout en travaillant à une robustesse et à une exactitude améliorées, ainsi que les éléments suivants:

  • Maintenir et améliorer les services existants, notamment essayer activement de rembourser la dette technique et étendre leurs fonctionnalités
  • Participer à la conception, à la mise en œuvre et aux tests de nouveaux services
  • Examiner et résoudre les problèmes de performances sur l’ensemble de nos systèmes, notamment nos services, nos dépendances et l’utilisation du noyau
  • Guider la direction de notre pile technologique pour améliorer les performances, l’évolutivité et la maintenabilité
  • Encadrer et développer l’équipe à travers différents canaux (révision de code, discussions, discussions, etc.)
  • Critiquer et améliorer nos processus et méthodologies de développement
  • Contribuer aux logiciels à code source ouvert pour améliorer nos dépendances externes
  • Compléter et itérer sur les exigences en collaboration avec l’équipe produit
  • Vous impliquer et participer activement aux cérémonies Scrum

Ce dont vous avez besoin

  • 5 ans d’expérience en tant qu’ingénieur logiciel à temps plein
  • 3 ans d’expérience en programmation fonctionnelle dans Erlang
  • Expérience avec des systèmes d’exploitation, en particulier la pile réseau du noyau Linux (linux kernel networking, un atout)
  • Connaissance ou expérience de la conception et de la construction de systèmes distribués à fort trafic 
  • Avoir une base solide en programmation de systèmes, en informatique et en génie logiciel
  • Excellentes compétences de communication en anglais écrit, parlé et lu; le français est un atout.
  • Une attitude motivée, vous aimez être impliqué dans l’élaboration de la vision, de la direction et des objectifs de notre équipe et veiller activement à l’exécution de nos engagements.
  • Intérêt et expérience dans le mentorat de membres plus juniors de l’équipe

Encore mieux si vous avez (atouts) :

  • La connaissance/ou l’expérience de la conception et de la construction de systèmes distribués à fort trafic est un atout.
  • Appétit pour l’apprentissage :
    • Conception et architecture du système;
    • Structures de données avancées (succinctes, probabilistes, multidimensionnelles, etc.);
    • Sympathie mécanique, conception orientée sur les données (performance);
    • Programmation fonctionnelle;
    • Méthodologies agiles telles que Scrum/Kanban;
    • Vous aimez lire du code, et vous avez l’habitude de lire la source de vos dépendances. 

Bénéfices

  • Couverture santé et dentaire complète payée à 100% par l’entreprise (incluant massages et soins thérapeutiques) dès le jour 1. Accès à un programme d’aide aux employés et à une plateforme de soins virtuels (bien-être, soins médicaux et nutrition)
  •  Compte de dépenses santé et compte de dépenses personnel avec SunLife offrant des avantages personnalisés tels que des fournitures pour votre bureau à la maison, des accès au spa, des produits écolos, des équipements d’entraînement, des services de musique et bien plus encore!
  • Des remboursements jusqu’à 2000$ pour soutenir la santé 
  • Contribution de l’employeur au REER collectif allant jusqu’à 5 %
  • Rémunération totale concurrentielle, y compris un bonus basé sur la performance de la compagnie, de l’équipe et l’atteinte d’objectifs personnels
  • Minimum de 21 jours de congé payés par année

Avantages

  • Activités mensuelles virtuelles dirigées par un comité social (soirées jeux de société, happy hours, défis santé, etc.).
  • Accès à plusieurs opportunités de développement et de formation: votre propre licence LinkedIn Learning, Pluralsight, un programme de développement et de formation continue, et bien plus encore.
  • Officevibe – rétroaction anonyme pour prendre le pouls de nos équipes et stimuler l’engagement.
  • Programme d’Onboarding structuré pour s’assurer le succès de nos employés dès leur premier jour, et ce, jusqu’à la fin de votre première année chez Samsung Ads. Ceci inclut un programme de jumelage avec un buddy (un collègue qui est là pour vous) dès le jour 1.
  • Rabais incroyables sur les produits Samsung via programme d’achat employé de Samsung et accès à Perkopolis proposant des rabais, des coupons et des promotions.
  • Horaires d’été.
  • Programme généreux de référencement d’employés.
  • Programme Redonner qui offre la chance de voir ses dons caritatifs égalés par Samsung Ads, diverses opportunités de bénévolat incluant une journée de bénévolat payée.

*certains avantages ne s’appliquent qu’aux rôles permanents. Demandez plus de détails à votre spécialiste en acquisition de talents.

La vie chez Samsung Ads

Samsung Ads est une entreprise de technologie publicitaire de pointe en forte croissance connectant les marques aux audiences de télévisions Samsung, en utilisant les données les plus avancées du secteur pour créer la plateforme d’audience connectée la plus intelligente au monde. Faire partie d’une entreprise internationale telle que Samsung signifie que nous travaillons sur des projets d’envergure avec des équipes passionnées partout  dans le monde.

Nous sommes fiers d’avoir bâti une organisation de renommée mondiale, fondée sur un esprit entrepreneurial et collaboratif. Travailler chez Samsung Ads offre l’un des meilleurs environnements de l’industrie pour apprendre à quelle vitesse vous pouvez grandir, ce que vous pouvez réaliser et à quel point vous pouvez être bon. Nous nous épanouissons dans la résolution de problèmes, en innovant et en profitant de chaque étape du voyage. 

Vous hésitez à soumettre votre candidature parce que vous n’êtes pas certain de cocher toutes les boîtes? On veut entendre parler de vous ! Nous aimerions prendre le temps ensemble de discuter comment vous pouvez contribuer à la culture chez Samsung Ads!  

Le titre interne est ‘Développeur de logiciels’

Ready to make the jump?

Read our FAQ section to find the answers to your questions