Senior Software Engineer (Python)

Toronto 5 months agoFull-time External
Negotiable
Responsibilities and Duties • Design and deliver high quality features and enhancements. • Own the end-to-end delivery of large features within your team that could span 3+ months. • Create technical design specifications in collaboration with other members of the engineering team. • Provide estimates and actively participate in the sprint planning process. • Produce highly secure solutions. • Tune the performance of our distributed system to ensure they operate within our SLAs. • Peer review other engineers’ code. • Mentor other engineers to create good technical solutions to problems and ship code quickly to our customers. Qualifications and Skills • Experience with cloud computing and container-based distributed systems (Docker). • Experience working with relational databases (preferably MySQL) and high proficiency with SQL. • Understanding of higher level RDBMS concepts (locking and transaction model, isolation levels, deadlocks, etc.). • Significant experience with at least one dynamically typed, object-oriented programming. language ( preference for Python). • Great understanding of distributed systems and microservice architecture. • Hands-on experience in using message brokers such as RabbitMQ. • Deep understanding of restful API development. • Demonstrated ability to work in a fast pace customer centric environment. • 5+ years of experience in software development. • Excellent communication and organization skills. • Proven experience using code repositories such as GitHub. • Bachelor’s degree in Computer Science, Software Engineering, or equivalent. • Familiar with *nix like environments. • Build and integration experience with Payroll Providers and Time & Attendance platforms is highly desirable.