Roles: Java Lead/Java Developers (JAVA with Kotlin)
Location: Boston, MA (1 Lead and 2 Developers)
US Remote (3 Developers)
Pay Rate:
Lead \u2013 up to $70/hr
Developer \u2013 up to $60/hr
Roles and Responsibilities:
- Collaborate with other engaged, friendly, principles-first-thinking oriented engineers to understand customer use cases and implement core engineering capabilities
- Operate across multiple layers of the stack to design and build fault-tolerant distributed systems that optimize our fleet of fulfillment infrastructure and robots
- Inventing new features, designing, developing and deploying reliable applications
- Challenging and mentoring other engineers
- Participate in software architecture and design reviews
- Translating business and functional requirements into deliverable software and customer experience
- Develop tools to test and analyze complex systems, including those deployed in production, and dig into critical pieces of distributed systems like logging, tracing, metrics
- Code with no fear, supported by continuous builds, tests, a constructive code-review process, and a supportive culture of identifying and fixing bugs
Requirements
- 5+ years of non-internship professional software development experience
- Programming experience in Kotlin, Java (Core Java and Frameworks like Spring / SpringBoot) including object-oriented design
- 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems
- 1+ years of cloud experience (AWS / Azure / GCP)
- 1+ years of DevOps - CI/CD
- Strong in Data Structures and Algorithms
- Understand the problem and choose the right Data Structures and Algorithms to use
- Handle Time Space complexity
- Strong understanding of System Design
- Ability to explain the trade-offs in certain design decisions
- Explain complex technical concepts in an easy-to-understand way
Preferred:
- BS/MS in Computer Science, Math, or other algorithmic-centric discipline or equivalent experience
- Demonstrated ability to design, implement, and test software in a fast-paced environment
- Experience with multithreading and concurrency
- Self-motivated and able to solve problems independently
- Strong understanding of Data handling and workflows
- Strong communication skills, ability to work well in a team environment
- Experience with tools and environments (e.g., Distributed Cache (Redis), Distributed DB like DynamoDB, JSON / XML, Restful services, version control systems, Containerization (Dockers / Kubernetes), blue-green deployments, bug/issue tracking tools)
- Experience with Front End \u2013 React JS
- Experience and knowledge in building software for large scale industrial systems