Principal Software Engineer
Skills
AlgorithmsAmazon Web ServicesBig DataCateringContinuous IntegrationDatabasesElasticsearch
What the job involves
The main requirements, responsibilities and hiring steps.
Requirements
- 15+ years of relevant experience
- Experience with high volume distributed technical architectures with a high cost of failure and strong focus on reliability and availability
- Experience with Big Data technologies such as ElasticSearch NoSQL stores Kafka columnar databases DataFlow or pipeline systems and graph data stores
- Experience with infrastructure services such as enterprise message bus platforms configuration services toggle management systems and observability systems
- Experience with Domain Driven Design concepts and practices including bounded contexts event storming and specification by example
- Experience with design implementation and operation of data-intensive distributed systems
- Ability to design and communicate external and internal architectural perspectives using architecture design patterns and sequence diagrams
- Skilled in Continuous Integration and Continuous Deployment with automation tools like Terraform Jenkins and CodePipeline
- Knowledge of API and data model design and implementation for scale high availability and storage mapping
- Skilled with designing and operating software in a cloud provider such as AWS Azure or GCP
- Knowledge of algorithm development for intensive pipeline processing systems
- Understanding of security-focused design and development
- Ability to identify select and extend 3rd party components that provide operational leverage
Nice to have
- Multi-tenant systems experience
- Feature toggle strategy experience
Day to day
- Shapes and evolves the architecture using Distributed Domain Driven Design practices to improve robustness and scalability.
- Provides embedded architecture consultation to guide teams toward best practices design patterns and informed build vs buy decisions.
- Leads platform capability improvements and communicates complex technical concepts clearly to technical and non-technical stakeholders.
