Intermediate Python Developer

Johannesburg, Gauteng, South Africa

Job Description


Duties:

  • Attend all sessions required in order to understand the business and features being briefed in, in order to be able to contribute to solutioning and development.
  • Help execute on functional requirements
  • Understand user requirements and assist in gathering requirements
  • Complete all tasks in an agreeable time by yourself and your peers to ensure you do not block the work of others
  • Learn from your seniors and provide mentorship to Juniors
Technical:
  • Ensure that testing protocols are followed that have been set out by their team lead.
  • Ensure that all their code is merged via pull request and pull requests are reviewed in a timely manner
  • Ensure that code quality takes top priority and development occurs using the SOLID and DRY principles
  • Ensure that they produce clean and efficient code
  • Ensure that they evaluate their own code for improvement
  • Ensure that all work output is tested in a reasonable fashion before handed over to Quality Assurance
  • Utilize principles of agile software development to execute tasks on a daily basis
Administration:
  • Ensure that they have work assigned every sprint
  • Ensure all work assigned to themselves have estimates, appropriate titles and descriptions and that any updates, blockers and/or context are documented on the ticket.
  • Ensure confluence is used to document all logic and technical context for work produced and/or explanations of features from the perspective of the individual
  • Utilize instant messaging software that is provided by the organization to communicate with the production team on a day to day basis
  • Ensure that the they create: code comments, technical documentation, documentation of logic and business rule documentation and that a pull request is only made with he appropriate level of documentation associated
  • Work closely with all teams to ensure the platform is achieving the goals set out by business.
  • Assist Juniors with where required
Communication:
  • Raising any problems preventing themselves and/or their team from getting the job done
  • Ensuring that tasks are completed within their allocated sprint and ensure that any hindrance in delivery of tasks/features/projects is communicated promptly to production management
  • Ensuring processes being implemented are well understood and can be conveyed to other team members to ensure effective collaboration
  • Ensuring that they and their team coordinate directly with other team members to resolve issues, tasks and/or delays quickly
  • Ensuring that they have a clear view of priority, that their tickets are updated and they remain productive
Duty:
  • Be an advocate for the end-user
  • Be assertive when it comes to defending design/implementation decisions in both code and UI
  • Know how to discuss improvements or defensive decisions
  • Take criticism on the chin and seek to improve rather than becoming defensive
  • Always seek to improve their skills
  • Think about the future and not only of the present
  • Make decisions under instruction and discussion with seniors
  • Ensure that all work makes a contribution in some way
  • Work in collaboration with the other team members to expand and/or improve on all systems
  • Collaborate with other stakeholders to ensure that all work in flight is aligned with business objectives
Qualifications:
  • 3-5 years experience as a Python developer
  • Experience with the Django Python framework. Any other frameworks beneficial (e.g. Phoenix Framework, Flask, FastAPI)
  • Knowledge of overall Back End Architecture
  • Experience in testing and creating unit tests
  • Experience with TDD or BDD is beneficial, but not a requirement.
  • Familiarity with integrating with cloud frameworks (AWS, GCP, Azure) is beneficial
  • Fully understand the concepts of a REST API framework and have an understanding of other API frameworks (SOAP, RPC, GraphQL)
  • Experience with object-oriented principles, methodologies, and patterns
  • Understanding basics of CICD and CICD pipelines within the context of backend
  • Understanding of the SOLID and DRY principles
  • Willing to learn and work with a team
  • Ability to learn quickly
Please note that by submitting your personal information to Deka Minas you free-willingly issue the business consent to make use of such data for the specific purpose of securing you either permanent or temporary employment. Our business makes use of a POPIA compliant database and you have the right to access, right to correction and right to deletion of your personal information

Deka Minas

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD1276377
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    R480000 - 660000 per year
  • Employment Status
    Permanent
  • Job Location
    Johannesburg, Gauteng, South Africa
  • Education
    Not mentioned