Software Architect
Job description, responsibilities and duties
Our company is built from the ground up to work remotely, and we have an office in Prague as well. As a Software Architect, you will have the opportunity to travel across Europe, the Middle East, and Asia, working on projects that require communication with Customers, designing complex Systems and solving different Integration patterns. Your responsibilities will include:
- Lead the process of designing and developing the overall software architecture for our projects.
- Collaborate with stakeholders to understand business requirements and translate them into scalable and maintainable software designs together with our Business Analysts
- Provide technical guidance and leadership to the development team throughout the software development lifecycle.
- Ensure adherence to architectural principles, best practices, and coding standards.
- Mentor and coach developers on architectural concepts and methodologies.
- Conduct in-depth analysis of complex systems and identify areas for improvement and optimization.
- Assess risks and propose mitigation strategies to ensure the stability, performance, and scalability of our software solutions.
- Stay in touch with emerging technologies, industry trends, and best practices related to software architecture. Evaluate and recommend new tools, frameworks, and methodologies to enhance our software development processes and capabilities.
- Create and maintain architectural documentation, including system designs, diagrams, and technical specifications. Ensure that architectural decisions, patterns, and guidelines are properly documented and communicated to the development team.
These skills are a plus:
- Experience as a Software Architect or similar role, with a track record of successfully delivering complex software projects.
- Understanding of software architecture principles, design patterns, and best practices.
- Familiarity with multiple programming languages like Java Enterprise, Python, .NET.
- Experience with database technologies such as PostgreSQL, ArangoDB , ElasticSearch and MongoDB
- Knowledge of containerization and orchestration technologies such as Docker and Kubernetes
- Understanding of Big Data technologies such as Hadoop, Spark, and Flink
- Familiarity with message broker technologies such as Kafka and Apache ActiveMQ
- Familiarity with monitoring and logging tools such as Prometheus, Grafana, and ELK Stack
- Experience with agile software development methodologies such as Scrum and Kanban.
- Understanding of software testing methodologies and the ability to design and implement effective testing strategies.
What benefits do we offer?
- Working as a Backend Developer at our company means that you'll have the opportunity to work with some of the most interesting customers in the world, including Law Enforcement Units, Anti-terrorism groups, and Investigation departments.
- Possibility to travel up to 25% of the time.
- Feedback inside the team to improve.
- Remote work from anywhere.
- Flexibility in working hours.