Backend Software Architect (Python) – Digital Nova Scotia – Leading Digital Industry

Backend Software Architect (Python)


At resulta you will have the opportunity to work with brilliant, energetic co-workers. The environment is culture-driven, with a casual work atmosphere where technology is revered.

Your Role

As a Back-End Software Architect, you will code the APIs, Data Streaming Services, ETL Processes, Business Intelligence Applications, and Automated Services that drive critical, fresh data to a broad spectrum of website properties and data reporting tools. You will handle maintenance and feature additions to our BE applications, but also frequently create new, from-scratch applications and services using new technologies and platforms.

You will help to drive architecture and technical decision making for our back-end software products, and help to guide and mentor other developers in their learning. You pick up new technologies quickly and enjoy frequently having new technical problems to solve. You’re passionate about building scalable products, adhering to high quality coding standards and being part of a culture that promotes learning and sharing while respecting work-life balance. You enjoy autonomy, and you will have the option to work remotely and/or from our office.

What you’ll do

  • Work closely with team members to maintain existing data capture, BI and automation services and design/create new back-end services & features;
  • Participate in peer-reviews of solution designs and related code;
  • Drive estimation and architecture for new and existing products;
  • Learn new technologies and frameworks as needed to solve new technical problems;
  • Attend regular sprint activities such as standups, grooming and retrospectives;
  • Maintain high software development standards by following established good practices and habits;
  • Collaborate with other development team members and other departments to drive innovation and help define internal standards.

What you’ll bring

  • 5+ years Professional Software Development Experience;
  • Advanced-level to Expert-level proficiency with an object-oriented programming language (Python preferred);
  • Experience developing REST APIs in Django or a similar or custom framework;
  • Experience ingesting data from JSON/XML feeds, sockets or streams;
  • Experience following Agile development practices (Scrum/Kanban);
  • Proficiency with Unix-based systems and using CLIs;
  • Experience with relational database language and structure, such as MySQL or Postgres;
  • Proficiency with code versioning tools, such as git.
  • Experience architecting custom software applications and solutions;
  • Experience communicating complex concepts effectively to your team, your manager, other teams and key company stakeholders.

Strong consideration will be provided to candidates that also offer the following:

  • Experience developing ETL processes with Apache Airflow;
  • Experience with Apache Kafka;
  • Experience with Machine Learning and Data Mining libraries, algorithms, frameworks and tools;
  • Experience building GraphQL APIs (Graphene);
  • Experience with containerisation, i.e. Docker, Kubernetes;
  • Experience with common server administration tasks;
  • Experience with NoSQL Databases (MongoDB).