Role: Senior Software Engineer
Location: Dublin, Irelan
About the Job: Danalto is an exciting, innovative company, providing solutions in Low Power Wide-Area Networks and the Internet of Things (IoT). Software plays a pivotal role in the delivery and development of our services. We are looking for a systems architect to work in the areas of software systems design and distribution for functions and services encompassing IoT edge and cloud functions, enterprise service integration and scale-out.
Experience:
6+ years industry experience, or equivalent.
Main Responsibilities:
- Develop and execute a technology roadmap and implementation plan with danalto CTO, CPO and Principal Software Engineer, based upon current and future service and product requirements.
- Agree and verify target reference architectures, specifications and designs with danalto product function and with OEM partner technical functions.
- Design and realise software packaging and distribution frameworks for danalto edge-software distributions on IoT positioning anchor and edge-node product functions.
- Cloud service platform design and scale-out for customer danalto IoT service, including web-enabled enterprise services supporting service-reporting and analysis, supply-chain management, billing.
- Contribute to the development of data and device service delivery platforms with reusable components that can be orchestrated together in different methods for multiple targeted solutions.
- Evaluate and research new and emerging technologies to assist product development and operational support activities.
- Contribute to designing and improving the CI/CD Pipeline used in danalto service deployment.
Ideal Candidate:
- Excellent academic qualifications and communication skills: written and verbal.
- Completed a computer science, Engineering or software engineering related degree, ideally 2.1 or higher.
- Experience with working with distributed software architecture and orchestration frameworks and tools such as Openstack.
- Experience with working with software containerisation and distribution frameworks: Docker, Docker Swarm or Kubernetes.
- An ability to program and solve programming challenges in languages including Python and with in-depth knowledge in at least one object-oriented programming language.
- Experience with the latest Cloud (Public and Private) technologies including some of AWS, Azure, GCP.
- A keen eye for detail and quality which should be reflected in your outputs.
- Can take initiative and work remotely, singly and as lead of a development team.
- Proven experience in designing enterprise-grade systems in distributed high-volume applications.
- Must demonstrate a firm understanding of system-wide software-design and practices for robust high-throughput deployment.
- DevOps experience.
- Proficiency with code coverage and unit testing frameworks
Not all are essential but are desirable:
- Postgres / InfluxDB / DynamoDB
- Git / GitLab
- Docker / Docker Swarm
- AWS (EC2, S3, Cloudwatch, Serverless)
- React / frontend frameworks
- CI/CD pipelines (Gitlab mainly but experience with CircleCI/Jenkins)
- Experience with Agile
- Knowledge of Queues/Streams systems – RabbitMQ/Kafka/SQS