About the Role
Ellis is the world’s first all-in-one solution for people immigrating to the United States. We help users establish themselves in the U.S. by providing phone plans, financial services, immigration assistance, rent co-signer, and more – all in one place. Our mission is to simplify immigration for the next billion Americans.
Software Engineers at Ellis work directly on our various product offerings taking ownership of new features from day 1. We emphasize collaboration and prioritize getting code to production quickly and iteratively–minimizing the time from hire to impacting our customers directly. As a software engineer you will work closely with product and design to build critical, foundational parts of the application and user experience.
What You'll Do
- Develop features and improvements to the Ellis product line in a secure, well-tested, and performant way.
- You’ll work with Product and other stakeholders (Partnerships, UX, etc.) to iterate on new features within the Ellis ecosystem.
- Represent Ellis and its values in public communication around broad initiatives, specific projects, and community contributions. Interact with customers and other external stakeholders as a consultant and spokesperson for the work of your team.
- Help to define and improve our internal standards for style, maintainability, and best practices for a high-scale web and mobile environment. Craft code that meets these standards. Maintain and advocate for these standards through code review.
- Consistently ship large features and improvements with minimal guidance and support from other team members. Collaborate with the team on larger projects.
- Solve technical problems of the highest scope and complexity.
- Drive innovation on the team with a willingness to experiment and to boldly confront problems of immense complexity and scope.
- Proactively seek out difficult impediments to our efficiency as a team ("technical debt"), propose and implement solutions that will enable the entire team to iterate faster
- Help improve the overall experience of our product through improving the quality of the front-end.
- Help identify areas of improvement in the code base and help contribute to make it better.
- Learn, collaborate and teach other Product Engineers. Everyone can contribute something new to the team regardless of how long they’ve been in the industry.
- Fix prioritized issues from the issue tracker (Monday). These are typically bugs with an attached severity and priority label.
- Advocate for improvements to product quality, security, and performance.
- Solve technical problems of high scope and complexity.
- Exert significant influence on the overall vision and long-range goals of the company. This could be technical and/or product focused.
- Provide mentorship for Junior and Intermediate Engineers to help them grow in their technical responsibilities and remove blockers.
- Effective communication skills.
- Ability to regularly achieve consensus with peers, and provide clear status updates
- Demonstrated ability to work closely with other parts of the organization
- Demonstrated capacity to clearly and concisely communicate about complex technical, architectural, and/or organizational problems and propose thorough, iterative solutions
- Experience with performance and optimization problems and a demonstrated ability to both diagnose and prevent these problems
Nice to haves
- Experience in a peak performance organization, preferably a consumer tech startup
- Experience with the GitLab product as a user or contributor
- Experience with Swift and/or Kotlin development
- Familiarity with DevOps processes and CI/CD pipelines
- Experience working with a global or otherwise multicultural team
- Experience contributing to open source software
We aim to complete the entire interview process on the same day, provided our respective schedules allow for it.
- Initial phone screen (30 minutes): Designed to help you learn more about us, our values, the role as well as a chance for us to delve deeper into your experiences.
- Technical challenge (1 hour): A take-home project to assess your technical abilities. This will be well structured with a clear success criteria.
- Pair programming interview (2 hours): Pair programming session with our Head of Engineering to dive deeper into your technical abilities.
- Culture interview (30 minutes): Final interview with our CEO to assess culture fit.