27 days ago

Logo of Creative Chaos

Principal Software Engineer - Python

Creative Chaos

Lahore, PakistanPakistanRemote

Job Summary

A Principal Software Engineer for Python is an associate at Creative Chaos who is mainly responsible for developing server applications of various software platforms including but not limited to writing Restful APIs to be consumed by client applications. A Principal Software Engineer makes sure that the functionality, security, and performance of the server application are as per the design and is completely bug-free. Principal engineers have a responsibility to lead a team of engineers, mentor team members through continuous training and guidance.


Duties & Responsibilities

  • Lead a team of software engineers
  • Mentor team members through training and guidance
  • Analyze business requirements
  • Estimate assigned tasks
  • Write code and unit tests
  • Collaborate with other team members
  • Tune your code for enhanced security and performance
  • Maintain systems by fixing any existing issues
  • Update issue tracking software
  • Provide status updates
  • Communicate with client
  • Control versions of your code
  • Research new technologies
  • Upgrade skills and knowledge
  • Evaluate candidates for open positions
  • Minimum Bachelors in Computer Science/Software Engineering or equivalent.
  • Minimum 6-8 years of related experience in professional industry
  • Extensive experience of Python using Django framework
  • Strong proficiency in Microsoft technologies, tools and platforms
  • Knowledge and experience of Azure and AWS
  • Knowledge and experience in writing backend components and Restful APIs
  • Understanding of security standards and compliances
  • Experience with different relational and schemaless databases such as Oracle/SQL Server, MySQL, PostgreSQL and MongoDB
  • Creating database structure for the required functionality
  • Experience with writing unit tests and ensuring the minimum 90% test coverage
  • Knowledge of and experience with Github, JIRA and other collaboration tools
  • Understanding of fundamental concepts and design principles
  • Basic understanding of front-end technologies
  • Flexible attitude and versatile personality
  • Strong communication and presentation skills
  • Strong influence among team members