Software Architect

Description

We are looking for an experienced Software Architect to make intuitive high-level decisions for software development. You will see the “big picture” and create architectural approaches for software design and implementation to guide the development team. A great software architect has a strong technical background and excellent IT skills. They are experienced in designing and possess ability to develop a unified vision for software characteristics and functions. The goal is to provide a framework for the development of a software or system that will result in high quality IT solutions.

Responsibilities

  • Collaborate with other professionals to determine functional and non-functional requirements for new software or applications.
  • Use tools and methodologies to create representations for functions and user interface of desired product.
  • Develop high-level product specifications with attention to system integration and feasibility.
  • Define all aspects of development from appropriate technology and workflow to coding standards.
  • Successfully communicate all concepts and guidelines to development team.
  • Oversee progress of development team to ensure consistency with initial design.
  • Provide technical guidance and coaching to developers and engineers.
  • Ensure software meets all requirements of quality, security, modifiability, extensibility etc.
  • Approve final product before launch.

Requirements and skills

  • Proven experience as software architect.
  • Experience in software development and coding in various languages (C#, .NET, Java etc.)
  • Excellent knowledge of software and application design and architecture.
  • Excellent knowledge of UML and other modeling methods.
  • Understanding of software quality assurance principles.
  • A technical mindset with great attention to detail.
  • High quality organizational and leadership skills.
  • Outstanding communication and presentation abilities.
  • Experience in Logistic Management System is a plus.
  • Experience in Mathematical Optimization is a plus.

Qualifications

  • 7+ years software engineering experience.
  • Experience mentoring senior engineers on designing and implementing challenging projects.
  • Experience implementing and designing micro services architecture.
  • Experience with cloud providers (AWS, Azure) and cloud native solutions.
  • Agile/SCRUM experience.
  • Implementation knowledge of Object-Oriented Programming Design Patterns.
  • Experience with RESTful Web Services.
  • Experience with Kubernetes, Docker, and containerization.

Job Type: Full-time/ part-time.

Contact us: recruitment@ctoptimal.com