CICD Pipeline
Distributed Applications
Java
Kotlin
Relational and NoSQL databases
Understanding of underlying infrastructure: Storage plus network
Nice To Have
Kafka
Micronaut
Orchestration workflow engines
Platform Engineering
Python
Job Description
Develop and test code to deliver functionality that meets the overall business strategy and objectives
Build the work needed to implement features from the product backlog
Size user stories
Unit test code, create automated test scripts, and execute all other testing-related tasks
Test deliverables against a user story's acceptance tests
Execute necessary project documentation
Work closely with other team to ensure that features meet business needs
Follow industry-standard agile software design methodology for development and documentation
Work with infrastructure, security, and other partners
3-5 years in an engineering role
1-3 years participating in agile development
Scrum certification, a plus
Experience with test-driven development and software test automation
Deep experience working in an agile environment (e.g. user stories, iterative development, etc.)
IoT Platform Team is to enable teams to deploy and manage IoT devices at scale in *** facilities to provide guest and team member services effectively and efficiently by abstracting device management and network complexities. Critical guest services such as refrigerator monitoring, guest request button, team member safety and productivity use cases. The platform has about 50K devices connected and processes 100s of millions of messages per day from across 2K locations.
As a lead consultant (Development Engineer), you serve as the technical anchor for the engineering team that supports a platform. You create, own, and are responsible for the platform architecture that best serves the functional and non-functional needs. You identify and drive architectural changes to accelerate feature development and improve the quality of service. You have deep and broad engineering skills.
Engineer On The IoT Platform Team
Are empowered to make technological choices and pick the best tools for the job.
Are building self-service platform constructs to allow other teams at *** to accomplish their business goals.
Have a goal of Full CD deployments with automated tests, monitoring, and rollback.
Think outside the box to solve problems with high cardinality that will break traditional tools meant for applications such as monitoring tools.
Our engineering teams are empowered to select the appropriate technology for the problem they are trying to solve.
Common technologies include Micronaut, Kotlin, Java, Python, Golang, Kafka, relational and KVP databases (Postgres, MariaDB, Mongo, Redis, etc.), Orchestration workflow engines like Temporal, Camunda
Core responsibilities of this job are described within this job description. Job duties may change at any time due to business needs.
4-year degree or equivalent experience
7+ years of software development experience with at least one full cycle implementation
Demonstrates strong foundational core computer science concepts
Strong understanding of systems design, Development and Observability for building robust and scalable software solutions
Demonstrates broad and deep expertise in multiple computer languages and frameworks (e.g., open source). Designs, develops, and approves end-to-end functionality of a product line, platform, or infrastructure
Communicates and coordinates with project team, partners, and stakeholders
Demonstrates expertise in analysis and optimization of systems capacity, performance, and operational health
Understands and develops solutions to foster data lifecycle management
Maintains deep technical knowledge within areas of expertise
Stays current with new and evolving technologies via formal training and self-directed education
Experience in building highly scalable distributed systems
Any Gradute