What you’re going to do

  • Work on high performance and adaptive Python cloud applications that might need to interface with other applications and/or REST APIs;
  • Improve your coding skills in Python, and broaden your horizon with new technologies:
    • AWS storage (S3, RDS, Athena)
    • Docker images running on a Kubernetes cluster
    • Gitlab Continuous Integration/Continuous Delivery pipelines
    • Flask, sqlalchemy, marshmallow, and many other useful Python libraries
  • Write clean, well engineered, maintainable code, that conforms with accepted standards;
  • Maintain the resilience of the codebase through unit and functional testing;
  • Work with a talented team of engineers and architects to help develop cutting edge cloud solutions, and discover industry best practices;
  • Discover continuous learning opportunities in your everyday activity.

The project will be part of a complex ecosystem, where communication must be ensured via APIs. It will be a sandbox inspired by a real-world scenario, designed to familiarize you with some of the core technologies and processes we use here at Sparktech, and will act as a hands-on tutorial for real-world projects.

What we’re looking for

Qualities

Your curiosity and willingness to learn are your most valuable assets at this stage of your career. There is much to learn, but if you are patient and persevering, you will gradually overcome all of the obstacles in your path to become a skilled engineer and valued member of the team.

Good communication skills and an optimistic attitude will help you connect with your team and increase your productivity. You can always find something new to learn from those around you if you are willing to listen, and teamwork can find solutions in even the most daunting of problems.

The difference between something good and something great will come from your attention to detail and drive to do better than last time. Your mentor will help guide you forward, but it is ultimately up to you to take those steps. Learning how to ask the right questions, and being willing to research on your own will gradually unlock more of your creativity and potential. Your passion towards software development will fuel your inspiration to come up with original ideas on how to get things done. All these will have a major impact on your results.

Qualifications

To complete the ideal candidate profile, you need to have:

  • Either intermediate knowledge of Python OR basic knowledge of Python, but intermediate knowledge of another high-level programming language, such as Scala, Ruby, or Java;
  • Basic knowledge of relational databases;
  • Good knowledge of OOP principles;
  • Good understanding of web concepts – HTTP, client-server model, authorization / authentication, RESTful APIs etc;
  • Experience with any of the following is a plus:
    • Any cloud service from AWS, GCP, Azure;
    • Frequently used Python packages such as pandas, numpy, sqlalchemy, flask, etc
    • Parallel and distributed computing;
    • Git version control;
    • Docker and Kubernetes;
    • Commonly used Linux concepts and commands;
    • Working in an Agile environment;
  • Willingness to learn new skills, adapt to new technologies, and perseverance in the face of the unknown;
  • Good English skills (written and spoken).