Software Engineer I
The Company
Simply put, SpryPoint provides Smart Solutions for Smart Utilities.
Founded in 2011, SpryPoint is a leading provider of cloud-based solutions for the utility sector. Our team of experts has extensive experience serving utilities across North America, and we are dedicated to helping our clients improve their operations and better serve their customers. Our solutions include advanced billing and customer relationship management tools, as well as powerful analytics and data management capabilities. We are proud to have been recognized by industry experts and our clients alike for the value and innovation we bring to the market.
In February of 2023, SpryPoint received a strategic investment from Norwest, a leading venture and growth equity investment firm. With this investment, SpryPoint will build on its significant business momentum over the past three years, expanding its team and positioning the company to continue increasing market share of its mission-critical, cloud-native solutions for smart utilities.
Position Overview
As a Software Developer at SpryPoint, you will be building and integrating interactive web applications, services, and apps that real people will actually use. As a full-stack developer, you will work with languages and technologies such as Java, JavaScript, HTML/CSS, relational databases and SQL.
As a big part of a growing development team, you will be called on to play a role in designing, building, testing, and deploying SpryPoint's enterprise applications. You will participate in building and deploying enterprise-level web applications for clients across North America.
Responsibilities
Participate in all Agile ceremonies, providing valuable input and insights during planning, reviews, and retrospectives.
Actively collaborate with other team members, contributing ideas and insights to enhance the development process.
work collaboratively with other team members to solve complex technical challenges and make informed decisions.
Build and deploy enterprise-level web applications, ensuring high performance, reliability, and user satisfaction across various platforms and devices.
Continuously learning and adapting to new technologies and methodologies to enhance the quality and efficiency of SpryPoint's applications.
Take ownership of assigned tasks or user stories, ensuring timely completion and meeting defined requirements.
Contribute to the design and architecture discussions, offering insights and suggestions for improvements.
Participate in code reviews, providing constructive feedback to peers and incorporating feedback received on own code.
Support junior developers through pair programming, reviewing pull requests. Sharing knowledge and expertise with junior engineers, helping them grow and improve their skills.
Assist in the troubleshooting and resolution of technical issues, both during development and in production environments.
Contribute to the documentation of technical designs, implementation details, and best practices.
Engage in ongoing professional development activities, such as attending training sessions, workshops, or conferences, to expand knowledge and skills.
Proactively identify opportunities for process improvements and efficiencies within the development team.
Actively participate in knowledge-sharing sessions and contribute to the team's collective learning and growth.
Communicate effectively with stakeholders, including providing updates on progress, raising concerns or risks, and seeking clarification on requirements when needed.
Qualifications and Competencies
Bachelor's degree in Computer Science, Engineering, or related field.
3+ Years of experience in software development, with a focus on Java backend web applications.
Proficiency in developing clean, maintainable, and testable code, with an understanding of industry best practices.
Solid understanding of relational databases and proficiency in SQL for data manipulation and querying.
Experience working with web technologies such as HTML, JavaScript, and CSS to develop user interfaces and interactive web applications.
Familiarity or hands-on experience with modern development and deployment methodologies, including knowledge of AWS services and cloud computing concepts.
Demonstrated interest in expanding knowledge and applying it to solve industry problems, with a proactive approach to continuous learning and skill development.
Primary qualifications include a strong interest in learning and the ability to apply acquired knowledge effectively to produce clean, efficient code and solve technical challenges.
Our Exciting Hiring Process!
We know that looking for a new role can be both exciting and time-consuming, and we truly appreciate your effort. Here’s a peek into our hiring process for this position, so you know exactly what to expect:
👋 Stage 1: 30-minute Recruiter Interview
We'll dive into your professional background and experience, share more about SpryPoint and the role, and answer any burning questions you might have.
🧑💻 Stage 2: Take Home Skills Assessment
We’re flexible! You can set the deadline that works best for you to complete the take-home coding assessment. We use TestDome, and the test needs to be done in one sitting. It includes live coding and multiple-choice questions, focusing on Java and JavaScript. We’re not looking for perfection; we’re interested in how you approach problem-solving.
👥 Stage 3: 1-hour Technical Interview
If the assessment goes well, you'll move on to the technical interview. You'll get to meet with our Software Engineering Manager (Maryam or Andrew) and a Team Lead. This is a great opportunity to show off your technical skills. We value collaboration, so we'll discuss the assessment together. We’re interested not just in your final solution, but also in your thought process and how you got there.
👥 Stage 4: 45-minute Final Interview with Jason, Director of Software Development
This is your chance to discuss your career goals and learn how we can support your growth and aspirations.
📝 Stage 5: References
We'll check your references to confirm all the great things we've learned about you.
🚀 Stage 6: Offer!
If all goes well, we’ll be thrilled to extend an offer and welcome you to the team!
Why SpryPoint?
🚀 Remote-first and autonomous working environment with flexible working hours
💰Competitive compensation package
💻 Macbook + $500 towards your home office setup
🏥 Health, dental, vision, and life insurance
🏝️ Generous PTO, ½ day Summer Fridays, and flexible sick days
📈 RRSP (Canada) and 401k (US) matching program
🧠 Professional development courses, $2,500 annual tuition assistance, and a book bounty program
🧳 Annual company events (SpryPalooza!) and team offsites
SpryPoint is an equal-opportunity employer. We do not discriminate, and encourage applications from everyone regardless of race, religion, colour, national origin, ancestry, sex, sexual orientation, gender identity, age, physical or mental disability, medical condition, genetic characteristics, veteran or marital status, pregnancy, or any other classification protected by applicable local, state, or federal laws.
If you need any accommodations or adjustments throughout the interview process and beyond, please let us know, and we will work with you to provide the necessary support and make reasonable accommodations to facilitate your participation.
Please note that to maintain our SOC 2 compliance, we ask all candidates to complete background check and identity verification as a final step in our interview process.
About the job
Apply for this position
Software Engineer I
The Company
Simply put, SpryPoint provides Smart Solutions for Smart Utilities.
Founded in 2011, SpryPoint is a leading provider of cloud-based solutions for the utility sector. Our team of experts has extensive experience serving utilities across North America, and we are dedicated to helping our clients improve their operations and better serve their customers. Our solutions include advanced billing and customer relationship management tools, as well as powerful analytics and data management capabilities. We are proud to have been recognized by industry experts and our clients alike for the value and innovation we bring to the market.
In February of 2023, SpryPoint received a strategic investment from Norwest, a leading venture and growth equity investment firm. With this investment, SpryPoint will build on its significant business momentum over the past three years, expanding its team and positioning the company to continue increasing market share of its mission-critical, cloud-native solutions for smart utilities.
Position Overview
As a Software Developer at SpryPoint, you will be building and integrating interactive web applications, services, and apps that real people will actually use. As a full-stack developer, you will work with languages and technologies such as Java, JavaScript, HTML/CSS, relational databases and SQL.
As a big part of a growing development team, you will be called on to play a role in designing, building, testing, and deploying SpryPoint's enterprise applications. You will participate in building and deploying enterprise-level web applications for clients across North America.
Responsibilities
Participate in all Agile ceremonies, providing valuable input and insights during planning, reviews, and retrospectives.
Actively collaborate with other team members, contributing ideas and insights to enhance the development process.
work collaboratively with other team members to solve complex technical challenges and make informed decisions.
Build and deploy enterprise-level web applications, ensuring high performance, reliability, and user satisfaction across various platforms and devices.
Continuously learning and adapting to new technologies and methodologies to enhance the quality and efficiency of SpryPoint's applications.
Take ownership of assigned tasks or user stories, ensuring timely completion and meeting defined requirements.
Contribute to the design and architecture discussions, offering insights and suggestions for improvements.
Participate in code reviews, providing constructive feedback to peers and incorporating feedback received on own code.
Support junior developers through pair programming, reviewing pull requests. Sharing knowledge and expertise with junior engineers, helping them grow and improve their skills.
Assist in the troubleshooting and resolution of technical issues, both during development and in production environments.
Contribute to the documentation of technical designs, implementation details, and best practices.
Engage in ongoing professional development activities, such as attending training sessions, workshops, or conferences, to expand knowledge and skills.
Proactively identify opportunities for process improvements and efficiencies within the development team.
Actively participate in knowledge-sharing sessions and contribute to the team's collective learning and growth.
Communicate effectively with stakeholders, including providing updates on progress, raising concerns or risks, and seeking clarification on requirements when needed.
Qualifications and Competencies
Bachelor's degree in Computer Science, Engineering, or related field.
3+ Years of experience in software development, with a focus on Java backend web applications.
Proficiency in developing clean, maintainable, and testable code, with an understanding of industry best practices.
Solid understanding of relational databases and proficiency in SQL for data manipulation and querying.
Experience working with web technologies such as HTML, JavaScript, and CSS to develop user interfaces and interactive web applications.
Familiarity or hands-on experience with modern development and deployment methodologies, including knowledge of AWS services and cloud computing concepts.
Demonstrated interest in expanding knowledge and applying it to solve industry problems, with a proactive approach to continuous learning and skill development.
Primary qualifications include a strong interest in learning and the ability to apply acquired knowledge effectively to produce clean, efficient code and solve technical challenges.
Our Exciting Hiring Process!
We know that looking for a new role can be both exciting and time-consuming, and we truly appreciate your effort. Here’s a peek into our hiring process for this position, so you know exactly what to expect:
👋 Stage 1: 30-minute Recruiter Interview
We'll dive into your professional background and experience, share more about SpryPoint and the role, and answer any burning questions you might have.
🧑💻 Stage 2: Take Home Skills Assessment
We’re flexible! You can set the deadline that works best for you to complete the take-home coding assessment. We use TestDome, and the test needs to be done in one sitting. It includes live coding and multiple-choice questions, focusing on Java and JavaScript. We’re not looking for perfection; we’re interested in how you approach problem-solving.
👥 Stage 3: 1-hour Technical Interview
If the assessment goes well, you'll move on to the technical interview. You'll get to meet with our Software Engineering Manager (Maryam or Andrew) and a Team Lead. This is a great opportunity to show off your technical skills. We value collaboration, so we'll discuss the assessment together. We’re interested not just in your final solution, but also in your thought process and how you got there.
👥 Stage 4: 45-minute Final Interview with Jason, Director of Software Development
This is your chance to discuss your career goals and learn how we can support your growth and aspirations.
📝 Stage 5: References
We'll check your references to confirm all the great things we've learned about you.
🚀 Stage 6: Offer!
If all goes well, we’ll be thrilled to extend an offer and welcome you to the team!
Why SpryPoint?
🚀 Remote-first and autonomous working environment with flexible working hours
💰Competitive compensation package
💻 Macbook + $500 towards your home office setup
🏥 Health, dental, vision, and life insurance
🏝️ Generous PTO, ½ day Summer Fridays, and flexible sick days
📈 RRSP (Canada) and 401k (US) matching program
🧠 Professional development courses, $2,500 annual tuition assistance, and a book bounty program
🧳 Annual company events (SpryPalooza!) and team offsites
SpryPoint is an equal-opportunity employer. We do not discriminate, and encourage applications from everyone regardless of race, religion, colour, national origin, ancestry, sex, sexual orientation, gender identity, age, physical or mental disability, medical condition, genetic characteristics, veteran or marital status, pregnancy, or any other classification protected by applicable local, state, or federal laws.
If you need any accommodations or adjustments throughout the interview process and beyond, please let us know, and we will work with you to provide the necessary support and make reasonable accommodations to facilitate your participation.
Please note that to maintain our SOC 2 compliance, we ask all candidates to complete background check and identity verification as a final step in our interview process.