Senior Software Developer / Engineer - Distributed Systems Job
Job Description Job Attributes+
Montréal, QC, Canada
The Programmable Platform team is a full stack team that builds and operates the software components that allows client to define and execute custom business logic and machine learning models on the AppNexus real time bidding infrastructure. We develop customer facing APIs, domain specific languages, compilers and bytecode interpreters that must execute custom algorithms within real-time constraints. We work extensively with the product team and UI engineers to build the most customizable online advertising platform. We collaborate with data science teams (including our own) in order to develop the best tools to run predictive models in production.
• Design and implement features and enhancements to the Programmable Platform APIs and languages
• Contribute high-quality code to multiple software projects in a variety of platforms and languages, primarily C, Python and NodeJS.
• Maintain and operate multiple services and components of a distributed application.
• Collaborate with a variety of stakeholders and teams such as UI engineering, product, data science and customers engineering teams
• Share your knowledge, guide and mentor other engineers
• Consistently look for ways to optimize and improve our systems
• 6+ years of experience working as a professional Software Engineer
• Experience building and operating production distributed systems and services
• Experience providing mentorship and guidance, including code reviews, training, and feedback
• Excellent Computer Science fundamentals with regards to data structures, algorithms, time complexity, etc
• Proficiency in multiple scripting and programming languages, and proven ability to pickup new languages
• Strong understanding of large scale distributed data processing
• Strong focus on code quality and testing
Good to have:
• Experience building large scale distributed systems
• Experience with C or C++
• Experience in low-level systems engineering
• Experience in compiler development and optimization
• Experience with Docker and Kubernetes
• Familiarity with functional programming
• Knowledge of static analysis and formal verification
• Marked Interest in learning any of the previous
• You are passionate about learning and teaching
• You love challenging yourself to constantly improve and sharing your knowledge to empower others
• You look beyond the surface to understand root causes so that you can build long-term solutions for the whole ecosystem
• You are not satisfied with the status quo and are always looking to improve how things are done and what is built
Who We Are
At AT&T, we see beyond just your service.
We know that your skills are going to launch a civilian career that could change everything. And we want you to do that here. With our mission to hire 20,000 veterans by 2020, you’ve found a place where service members make a difference.