Position: Senior Python and Golang Developer
Company: Catalisto
Category: Python
Experience required: 3y
English level: upper

We are seeking an energetic and motivated Python engineer to join our team and help us build out the future of the cybersecurity marketplace.  We’re looking for someone who loves building and pioneering in the technology space and who thrives on solving complex problems in a fast-paced environment.

YOUR ROLE
You’ll be part of a collaborative start-up team who solve real problems and meet real customer needs. We are seeking a Back End Software Engineer who is passionate about using cutting-edge open source frameworks with emerging technologies.  You’ll collaborate with others in the product and project team to provide and maintain applications that meet business needs. Responsible for software design and development for moderate to complex business solutions, proving technical guidance and leadership for specific applications. 

YOUR RESPONSIBILITIES
Application Development
•	Collaborate with a team of full-stack engineers to design, develop and maintain architecture for web-based micro-services and third-party integrations
•	Design, implement and enhance several Python (Django) microservices
•	Create efficient and reusable code with extensive test coverage and modern technologies
•	Performance tuning, testing, refactoring, usability and automation
•	Analyze high level system specifications, system requirements and/or use cases. Convert information into low level specifications and system design plan. Designs and develops modern to complex software solutions in adherence with I/S standards, methodology and internal controls. Identified and provides solution alternatives for the defined functional and system requirements when needed.
•	Understands and identifies system dependencies. Understands functionality, integration points and impacts of proposed changes to supporting applications. Follows through with options and recommendations.
•	Provides appropriate documentation for design decisions, estimating assumptions, code modules, and performance metrics as required by organization standards.
•	Defines, conducts, and/or participates in testing (i.e. unit, system integration). Prepares, leads and/or participates in development walkthroughs.
•	Collaborates with others regarding effectiveness of systems flow, data usage and manual or automated processes to verify requirements.
•	Ensures software development meets standards for programming, design, performance, quality, and security. Identifies and recommends areas for improvement in planning, design, development, and testing.
•	Assists in developing recommendations for future development, releases, and enhancements (technical implementations).
•	Integrates and consume third-party APIs
•	Build automated unit and integration tests
•	Maintain strong coding, compliance and security standards
Maintenance & Support
•	Provides second-level and third-level support. Troubleshoots problems with supported applications and ensures problems are resolved to client satisfaction. Escalates to senior-level when needed. Provides alternatives for solving identified system problems.
•	Repairs, modifies, and develops additional functionality.
•	Follows and supports change management practices and internal controls standards. Communicates changes and impact to those affected. Assists less experienced technologists in all areas of maintenance and communication.
•	Shares knowledge and information with others to resolve problems and build team knowledge.
•	Creates and maintains service desk diagnostics and job aids for area of responsibility. Updates and/or reviews with those affected.
 
REQUIREMENTS
•	Minimum Bachelor of Science degree in Computer Science, Software Engineering or equivalent experience
•	5+ years experience in a commercial development in product company and/or SaaS products
•	4+ years experience in Python (Django)
•	3+ years experience in Golang
•	 Familiarity developing asynchronous applications with REST and message bus interfaces 
•	Thorough understanding of XML, JSON, REST Web Service technologies, and data structure fundamentals 
•	Understanding and experience in web application security (OWASP) 
•	Proven experience with developing and supporting microservices based applications 
•	Proven experience designing and supporting API based applications 
•	Proven ability to author clean, standards-compliant code 
•	Self-motivated and detail oriented with the ability to work independently and collaboratively 

PREFFERED EXPERIENCE:
o	Experience with deploying solutions in AWS or Azure 
o	Experience with Kubernetes and containerisation 
o	Experience with Kafka, PostgreSQL, Redis and/or ElasticSearch 
o	Unit testing experience 
•	Excellent and effective communication skills, both orally and in writing
•	Excellent organisational and time management skills
•	Excellent attention to detail and the ability to prioritise and work on multiple projects in a fast-paced, changing environment
•	A positive attitude, willing to jump in and tackle new challenges with creativity and collaboration.