Position: CTO/Systems Architect (Relocation to Australia)
Company: WiseheadHunters
Category: Lead
Experience required: 5y
English level: upper
Published: 2020-09-01T00:00:00+03:00

Oversees all technical aspects and technological resources of an organisation for the purpose of organisational growth. Establishes a technological vision for an organisation and leads the company's technological development
Responsible for developing, enhancing, and deploying company's IT systems. Ensures execution of company's business goals and strategies

As a Systems Architect is
Responsible for determining multiple design alternatives, assessing such alternatives based on all identified constraints and selecting the most suitable options for further design.
Responsible for providing implementation requirements, deploying strategy, system documentation.

Desirable knowledge and certifications:
- Good knowledge in SDLC, understanding CI/CD
- Good knowledge in web development (HTML, CSS, JavaScript, React.js)
- Good knowledge in programming languages and paradigms (Node.js, Python, C#,Erlang)
- Good knowledge in databases, understanding base concepts, SQL, NoSQL and etc.
- Good knowledge in cloud computing (AWS, Google Cloud)
- Good knowledge in micro services technology (Kubernetes, Docker Swarm)
- Experience in projects management including Agile methodology
- AWS Solution Architect Certification is desirable

Duties:
- Works with other departments to use new technologies to streamline
company policies and rules
- Conducts research to improve the technological assets of a
company
- Oversees IT budgets to make sure there are no unnecessary
expenditures
- Develops and directs all networking safeguards to reduce the risk of
outside breaches and protect sensitive internal and external client
information
- Develops and implements all internal communication systems, such
as Hubspot, google analytics email and instant messaging
- Evaluates new technology and makes recommendations on
technological solutions
- Uses technological assets to help ease use for employees and
clients
- Manages any digital media assets
- Consistently evaluates technical efficiency and makes changes as
necessary
- Makes presentations to board of directors and chief executive officer
- Develops or assist to enhance a company's website to increase site traffic
- Identifies competitive advantages and technological trends for the
benefit of a company
- Directs the development and possible implementation of policies in
instances of a breach, also known as disaster recovery plans
- Responsible for HR for technical team
- Responsible for the performance of the technical team
- Responsible for the quality of code and other work performed by the
technical team.
- Design and development of services and applications operated and
marketed by the company
- Implement management direction and vision in product development
- Produce well designed and well tested production quality code.
- Accountable for complete development process:
o Requirement gathering and analysis.
o Design.
o Implementation or coding.
o Testing.
o Deployment.
o Maintenance.
- Participate in design and code reviews to help increase the quality
of our products.
- Select best technology for the situation. 
- Ensure best practices for building secure software are followed.
- Interact with management during Requirement gathering and
analysis stage to document required features and specifications.
- Resolve complex technical issues in existing applications
- Document all development and modification.
- Produce manuals and other documentation.

Including but not limited to:
- Establish governance processes of direction and control to ensure that
objectives are achieved. 
- Protect the confidentiality, integrity, and availability of the company’s data
and servers.
- Identify and implement technology trends and platforms.
- Communicate the company’s technology strategy to investors, management, staff, partners, customers, and stakeholders.
- Evaluate and recommend technologies.
- Conduct code reviews and specification conformance testing.
- Establish an application deployment process.
- Implement technical requirements.
- Integrate customer service and support with the software engineering
process to support resolution of customer issues and improve application