\nThe Principal Software Engineer will play a critical role in developing software services for a state-of-the-art robot control system for grocery supply chain automation. As a Principal Software Engineer, you will be part of a talented team focused on developing industry-changing solutions.\n\nWHAT WILL YOU DO?\n\n\n* Develop reactive microservices written in Java to handle customer orders, control and coordinate swarms of robots, control various elements of the system, and maintain metrics.\n\n* Work with the electrical, mechanical, systems, and safety teams to document and detail software requirements.\n\n* Develop and code review modular and well documented software\n\n* Develop software unit-tests, integration tests, and acceptance tests\n\n\n\n\nWHAT ARE WE LOOKING FOR?\n\n\n* 10+ years' of experience in Core Java development (version 8 or above)\n\n* Experience developing reactive microservices (using Akka, Vertx, RxJava or a similar framework/library) or experience developing event-driven distributed systems using asynchronous actors and messaging\n\n* Experience with a messaging platform (ActiveMQ, RabbitMQ, Kafka or similar)\n\n* Experience with Docker\n\n* Knowledgeable in robotics and/or automation\n\n* Experience with NoSQL databases and in-memory caches such as Redis or equivalent\n\n* Understanding of networking (TCP/IP, HTTP, etc.)\n\n* Experience with Unit Testing (using Junit, Mockito or similar)\n\n* Experience working within an Agile environment\n\n* B.S. in Computer Science, Engineering, or related area\n\n\n
See more jobs at Alert Innovation