Software Architect Job Description
Chefman is one of North America’s leading, award-winning brands of small kitchen appliances. We are in love with great food and we are inspired to empower ordinary people all over the world to create restaurant quality dishes while enjoying an easy-to-follow and user-friendly experience.
About CHEF iQ
The CHEF iQ® journey began in 2017 with the simple idea that cooking should be approachable and enjoyable for all. Our team of master Hardware, Software, and Firmware Engineers, along with our expert designers, Culinary and Video professionals are working tirelessly to create an unrivaled cooking experience that seamlessly combines software and hardware to elevate the art of cooking. The result — an ecosystem of unparalleled culinary intelligence that lives in the cloud and the mobile app, connected to a Smart Cooker™ that can turn any ingredient into art.
We are seeking a Software Architect with experience developing robust, cost-effective IoT platforms that scale. As a Software Architect at Chefman, you will be responsible for providing sound technical analysis, planning, and execution of product requirements across our Product Development organization (platform, infrastructure, mobile, console, hardware, product management).
Our ideal candidate is a problem solver with a solution-driven mindset. You will be involved in all phases of our Software Development Life Cycle (SDLC), taking a feature from concept to delivery. You should be comfortable working at all levels of the engineering stack and adept at designing, developing, and deploying solutions that focus on reliability, security, performance, and scalability.
The ability to collaborate with both technical and non-technical team members is a key to this role’s success. You should be comfortable presenting to both audiences in a clear and concise manner. You should also have experience generating system design and architecture documentation.
• Lead scrum team(s) of software engineers with a diverse set of expertise across app, firmware, and cloud service development.
• Convert product requirements to system design deliverables.
• Contribute to architecture, instrumentation, and performance analysis and decisions.
• Gather technical requirements and propose solutions based on prioritized product needs.
• Design and expand SQL/NoSQL DB design and architecture.
• Architect scalable solutions that include technical plans, KPI, and SLO goals across our API domains and AWS cloud services.
• Help develop and refine company standards, best practices, and processes for software development.
• You should love to keep your hands dirty with proof of concepts and bug fixes.
• Collaborate with Engineering Managers and Product Owners to prioritize development teams’ work in a Scrum or Kanban environment.
• Bachelor’s degree in Computer Science or another related field
• 5+ years of experience with at least one static language (e.g. Java, C/C++) and at least one dynamic language (e.g. Ruby, Python).
• 5+ years professional experience designing and building solutions utilizing AWS services such as EC2, S3, RDS, DynamoDB, SQS, Route 53, Lambda, IAM, ECS and API Gateway
• Excellent written and verbal communication skills.
• Ability to lead a project from early requirement gathering through development and, ultimately, product launch.
• Proven understanding and experience in:
o Computer science and software engineering fundamentals, data structures, and design patterns.
o Building highly available and scalable complex software systems.
o Networking and Security technologies (Load Balancers, Firewalls, encryption, certificates, key rotation, etc.)
Desired Skills and Experience
• Master’s degree in Computer Science or equivalent experience
• Experience handling large scale data processing using Hadoop, Spark, Cassandra, etc.
• Familiarity with ML/AI based services and algorithms
• Understanding of enterprise application development paradigms and practices
• Proven track record coaching software developers on development best practices