- Top 10% of respondersSmartRent is in the top 10% of companies in terms of response time to applications
- Responds within two weeksBased on past data, SmartRent usually responds to incoming applications within two weeks
- Public StagePublicly traded company
Senior Software Engineer (Elixir)
- $135k – $155k
- Remote •
- 5 years of exp
- Full Time
Not Available
Onsite or remote
About the job
Job Description
We are actively seeking a dynamic and innovative Senior Software Engineer to play a key role in shaping our IoT solutions. As a valuable member of our remote collaborative team, you will contribute to both front-end and back-end projects, but this particular role will be very back-end heavy in Elixir. In addition to technical expertise, we highly appreciate adaptability and a continuous passion for learning. Effective communication is fundamental in this role, whether you're reaching out for support or offering assistance to teammates.
We recognize the significance of diverse perspectives and encourage individuals from all backgrounds, including those who may have been underrepresented in the tech industry, to apply. Your unique experiences and skills are essential in contributing to our success. Strong time management skills are crucial, encompassing the ability to navigate distractions and cultivate a productive work environment without direct supervision.
Responsibilities
- Strategize and execute medium to large-scale projects, demonstrating autonomy while fostering a collaborative environment.
- Develop accurate project timelines and consistently meet or exceed those estimations.
- Create robust and inclusive software solutions, integrating automated testing to prevent potential regressions.
- Practice empathy in user interactions, contributing to informed decision-making processes prioritizing customer satisfaction.
- Make thoughtful architectural trade-off decisions, considering diverse perspectives and needs.
- Contribute to projects with a medium-to-high business impact, recognizing the importance of diverse voices in decision-making.
- Invest in continuous learning and improvement for yourself and your colleagues through pairing, code review, and mentorship.
- Demonstrate resilience in overcoming challenges, efficiently resolving issues, and actively seeking input from others as needed.
- Proactively identify potential challenges in your work requirements, communicating them early to facilitate collaborative problem-solving and course correction.
Required Qualifications
- 5+ years of professional experience in software development, with at least 2-3 years working with Elixir. We value different career paths and recognize a variety of experiences.
- Strong understanding of or interest in learning functional programming concepts such as immutability, first-class functions, recursion, and higher-order functions.
- Familiarity with relational databases (PostgreSQL, MySQL) or a desire to grow your database expertise.
- Proficiency or enthusiasm for learning Ecto for database querying and migration in Elixir applications.
- Experience with or openness to learning automated testing frameworks like ExUnit for Elixir, as well as continuous integration/deployment (CI/CD) pipelines.
- Passion for continuous improvement and learning demonstrated through a willingness to adopt new tools, languages, and workflows. We encourage curiosity and provide space for growth and development in a collaborative, inclusive environment.
Preferred Qualifications
- Hold a Bachelor's Degree in Computer Science or a related field, or have gained equivalent experience through non-traditional or self-directed learning paths. We welcome diverse routes to technical expertise.
- Experience with or interest in message queues (e.g., RabbitMQ, Kafka) and event-driven architectures.
- Familiarity with Git and Git-based workflows (GitHub, GitLab), or a willingness to learn.
- Familiarity with access control systems, IoT devices, or a desire to expand knowledge in these areas.
- Strong verbal and written communication skills, especially in team collaboration and explaining technical concepts to non-technical stakeholders. We value clear, compassionate communication.
- Knowledge of the MQTT protocol or a demonstrated ability to learn and apply new communication protocols.
- An interest in mentoring junior developers, conducting code reviews, and helping to set best practices for the team. We provide guidance and opportunities to build these skills if you are new to mentoring.
- Experience leading development projects or a desire to grow your leadership skills in managing and delivering projects.
#LI-Remote
#LI-AV1
About the company
- Top 10% of respondersSmartRent is in the top 10% of companies in terms of response time to applications
- Responds within two weeksBased on past data, SmartRent usually responds to incoming applications within two weeks
- Public StagePublicly traded company