Senior Full Stack Python Developer [Remote]
Engineering – Software Solutions - Toronto /
How do you feel about meeting new challenges and becoming an agent of change in the telecommunications industry? You will join an energetic team designing, creating and improving a variety of solutions for our customers. We’re looking for a critical thinker that enjoys playing with new technologies, solving complex problems and confidently brings their unique voice and perspective to the table.
What Problems Will You Be Solving?
One of the benefits of our company is that you won’t be working on one particular project for a long period of time - you’ll be working with different clients on different problems with a variety of teams - so flexibility and a willingness to learn new things are necessary to succeed! Think of it as having the fun and variety of a consulting gig but having a solid team supporting you as well as all the benefits and security of full-time employment!
Some examples of projects that our team is currently working on are:
- Developing innovative solutions for our customers;
- Assisting with our client’s Agile transformation;
- Assessing the current technology landscape and recommending future technology to meet our client's strategic goals;
- Building solutions using cloud native architecture;
- Migrating from monolithic to microservices architecture;
- Helping our clients in developing their DevOps practices using principles such as automation, continuous integration, continuous delivery and proactive monitoring.
You will be designing and developing various solutions for our customers (who are generally mobile operators and vendors) and your average day will vary but will likely include:
- Working with our team and customers (including travel to client premises and/or our Toronto Office as required);
- Application and infrastructure design from concept through development and implementation;
- Interfacing with the Product Owner/Solution Architect & other developers on the team;
- Ensuring that the code you’ve written functions as designed by creating automated unit and integration tests, which execute in a continuous delivery pipeline;
- Follow and adhere to the quality standards as set out by Sentaca/customer organization;
- Provide technical leadership to teammates through coaching and mentorship;
- Provide timely and actionable feedback as a part of the peer performance review process;
- Assist Sentaca recruitment by participating in the interview process as a technical interviewer when required;
- Contribute to the Sentaca Knowledge Base by creating, editing and sharing documents and materials about projects, best practices and/or relevant technology as discussed with the Director of Software Solutions;
- Participate in strategy and ideation sessions related to software specific initiatives;
- Participate in industry events as a subject matter expert or in a professional development capacity to keep abreast of industry trends and best practices.
Must Have Skills/Experience
- 7+ years professional experience in software development with a minimum of 5 years working with Python;
- Experience working autonomously and mentoring junior team members, as needed;
- Experienced in OO programming with Python;
- Working experience using Web Application frameworks (Django/Flask/Pyramid);
- Working experience with unit and integration testing (ideally, PyTest);
- Web Services (REST and SOAP);
- OO design and analysis using common design patterns;
- Proven experience developing machine learning;
- Working knowledge of data analysis libraries such as NumPy, Pandas and SciKit are strongly preferred;
- Relational and NoSQL Databases (MySQL, Postgresql, MongoDB);
- Experience using Linux for deployment;
- Experience working within an Agile team;
- Experience using Continuous Integration & Continuous Deployment (CI/CD) automation;
- Fluent in English, both written and verbal at a professional level (this is a client facing role);
- This is a remote position [Candidates can be from anywhere within Canada - preferably in Ontario]
Nice to Have Skills/Experience
- Knowledge of French is a strong asset;
- Knowledge or experience with ELK stack is a strong asset;
- Deep knowledge of mathematics, probability, statistics and algorithms;
- Experience with the Dash framework;
- Familiar with frameworks Tensorflow/Keras/PyTorch;
- Basic experience with networking (TCP/IP, IPv4/IPv6, DNS);
- Familiar with container technologies (Docker, Kubernetes, Swarm);
- Knowledge of Linux-based operating systems;Exposure to microservices architecture.
Sentaca has been providing high quality advice, services and solutions to the mobile and telecommunications industry since 2000 and we have firmly established ourselves as a trusted partner to our clients. With our strong mobile services background as our base, we have recently begun building practice areas in the new and exciting areas around software solutions, cloud-based solutions, video and IoT! We are always on the lookout for bright, creative thinkers to join our small (but growing!) team. Preference is always given to individuals who thrive on playing with new technologies and learning about new trends - we want to know what inspires you, and we want you to share that passion for technology with our team! Come grow with us!