System Architect for Sweden and India

System Architect for Sweden and India

Message Bus/Java/ MQTT (Eclipse Paho)

ORM (Hibernate/JPA)

Build automation (Maven)

Reactive Events (RxJava)

Logging (Log4j / SLF4J)

Mockito

Junit

Fitness

Unit testing (e.g. Jest)

HTML5

CSS3 (sass/scss)

NPM/Yarn

Our client is a fast growing Swedish environmental technology company founded in 2006. The company contributes to a better economy, work and environment through automated waste and laundry collection solutions based on vacuum technology. Their customers includes some of the largest and most prestigious hospitals and residential areas in Scandinavia.

Company's product Plant Control System is written in Java and runs on the customer’s or shared Windows or Linux servers and communicates with microprocessor-based control cards in the plant through MQTT over TCP/IP. The administration of the system is done through a Web based GUI application developed in AngularJS

The company is now in the process of establishing a software development team in India and is looking for System Architect for their Delhi NCR office. You will be based in India and report directly to the tech lead in Romania leading the work with the control system. 

The ideal candidate should have 8-15 years of relevant experience, be fast, efficient and structured and have a well regarded portfolio of previous work. We would expect you to be able to work autonomously, take a concept and come up with sensible ideas on how to accomplish it, produce several prototypes of the same idea for you and the Swedish team to pick the appropriate solution from.


Key Responsibilities
As a system architect , you will be a technical mentor of the team and think about what "the right things to do are” and generally ensure that the team has the right knowledge, tools and motivation to get the ”right things” done presumably by:
- Help them understand and define the “right things to do”
- Provide advice and trainings as needed
- Ensure the usage of best practices in industry
- Define and follow up on team goals and project quality metrics
- Use Agile methodologies to develop high quality product and to offer relevant information to the team and to various stakeholders.
- Give each individual the right mix of challenges and feedback on performance
- Propose tools and frameworks available in the market to increase team efficiency
- Broad and deep knowledge of Control Engine

Related to potential new development
- Extend the usage of Spring Framework and Spring Admin for easily integrate, monitor and test the system
- Decide on a framework to implement the State Machine
- Decide on a new Message Bus framework which offers better management capabilities
- Extends the usage of ORM/JPA to increase the capability for dynamically manipulating the data
- Decide if we need to push parts of the app to cloud and offer scalability / containerization through Spring Cloud/Docker/Kubernetes Tests

New or re-engineered code
- Develop new or improved functionality in the current code
- Re-design and refactor current asynchronous code
- Routing Mechanism
- State Pattern
- Manage Maven dependencies
- Implement Finite State Machines in existing architecture
- Build Proof of concept of new or re-engineered state machine
- Build Proof of concepts and implementation of new Graphical User Interface

Competencies
- Control Engine: Identify and write scenarios for functional/integration (bigger chunks) testing
- Tests before code (test driven development)
- Behavior-Driven Development (describe external behavior)
- Generate Software Quality Metrics

Key Skills/Competencies
Technologies: Related to refactoring of current code
- Message Bus/Java/ MQTT (Eclipse Paho)
- ORM (Hibernate/JPA)
- Build automation (Maven)
- Reactive Events (RxJava)
- Logging (Log4j, SLF4J)
- Unit & Integration Testing
- Mock objects and services (Mockito), Junit, Fitness
- Front end: Unit testing (e.g. Jest) 

Related to new development
- HTML5, CSS3 (sass/scss)
- React and Redux
- WebSockets
- Package Manager (NPM/Yarn)
- Task runners and bundlers (gulp/webpack)
- State Management

Related to current code
- AngularJS
- SVG
- GraphQL

In addition the candidate should have sound understanding of the following:
- Enterprise Patterns
- Event driven architecture
- Multi threaded architecture, Concurrent collections, Generic Types
- RESTful architecture, WebSockets
- Application security

Location: Sweden / Delhi NCR 
The first 12-18 months we expect you to be on a rolling schedule working out of Sweden and India respectively for three months each. After this initial period you would probably spend 50-100 days in Sweden each year.

Compensation: Attractive salary & Perks

Summary

  • Job type

    Full Time
  • Industry

    Information Technology (IT) / Software Development
  • Location

    Sweden/Delhi NCR, India
  • Pay

    Not Disclosed
  • Ref:

    11352
  • Position Closed
Let's Talk
Let's Talk Contact Us