He/She has accountability on making analysis design and development accordingly with requirements defined by the project leader and function manager.
He/She has the responsibility on creating and maintaining the documentation related to design, analysis and development.
He/she has the commitment on executing test for all the software components accordingly with customer requirement and following the test process defined.
He/She has to grant, and continuously, improve the Swisslog product's quality, by means of applying activities leading to discover failures and identifying solutions. Moreover, has to identify common patterns leading to a more reliable software and a more efficient development process.
He/she has to focus on the entire software development lifecycle: analyzing needs and then designing, developing and testing the software to meet those needs making a reliable, performing and scalable software.
Requirements
A bachelor's degree in computer science
Excellent knowledge of OOP and its main design patterns
Good understanding of microservices architecture and design
Excellent knowledge of T-SQL
Good knowledge of C# both .NET framework and Core
Good knowledge of Java (knowledge of Kotlin dialect is a plus)
Good understanding of UI programming (knowledge of Angular, RxJs, CSS/SCSS/SASS/LESS is a plus)
Understanding of message brokers such as Kafka
Understanding of analytics such as Elasticsearch
Understanding of real time programming, relational database concepts and architecture
Good understanding of SQL Server Database Administration
Experience developing controlling process of a single automatic machines
Experience designing and developing integration systems in industrial automation.
Solid understanding of the customer's operational working practices and requirements.
Creates system designs, architectural and technical spec. based on functional spec.
Strong analytical and reasoning skills with the ability to visualize processes and results.
Interaction with other departments/functions and team member.
Excellent skills in problem solving and communication.
Be able to see missing knowledge on technologies, close the gap autonomously, thus, to master tools at high level of efficiency.