Job Title:
Intermediate Software Developer
Reports to:
Manager, Software Development
With 40 years of seismic technology and industry application experience, we are a global, award-winning company providing monitoring solutions and equipment for studying artificial and natural seismicity. From mission-critical seismic arrays, tsunami and early earthquake warning systems in over 90 countries across the globe to induce seismicity monitoring in the energy sector. We specialize in full-service, integrated solutions for studying artificial and natural seismicity, including turnkey seismic networks, industry-leading precision instrumentation, complete data processing, analysis services, and software applications.
At Nanometrics, we proudly cultivate a culture of innovation, collaboration, and excellence, driving a global impact with cutting-edge technology, all while upholding our core values: mission-driven focus, customer obsession, intentional innovation, and unwavering commitment to excellence.
About the role:
This is a role for a highly skilled Intermediate Software Developer to join our team, focusing on building and extending the next generation of scientific instrumentation software. The problems we solve are diverse, requiring you to work across our entire software ecosystem.
The software we develop spans low-level embedded firmware, sophisticated applications running in customer data centers, and scalable cloud services. Consequently, we value adaptability and a polyglot mindset. If you are a smart and creative developer with a passion for software development technologies, and are eager to learn new programming languages or frameworks to solve the right problem with the best technology, you will thrive here.
Responsibilities:
As an Intermediate Software Developer, you will be deeply involved in the entire software lifecycle, from concept to deployment, spanning multiple technology stacks.
Full-Stack Development & Implementation: Design, implement, and test robust new features for our instrumentation, data center, and cloud-based software products that manage the acquisition, storage, transmission, and monitoring of Earth data.
Problem Solving & Optimization: Analyze and solve complex technical challenges related to system reliability, performance tuning, and optimizing system usability and data transmission across diverse network environments.
Technology Selection & Application: Actively participate in the selection and application of appropriate technologies (e.g., Rust for embedded, Java for data center) to deliver the best technical solution for a given problem. Willingness to learn new development technologies is essential.
Quality Assurance & Mentorship: Initiate and participate in thorough code reviews, provide constructive feedback, and mentor junior developers to ensure maintainable, high-quality code and design.
Project Execution: Deliver features through concept, design, implementation, and testing. Assist senior developers and managers in estimating effort, identifying risk, and defining edge test cases.
Operational Support & Improvement: Actively investigate and resolve technical issues escalated to R&D. Proactively identify and contribute to improvements in our processes, quality, and technologies.
Experience: 3–5 years of professional software development experience.
Technical Versatility: A proven ability to achieve expert-level proficiency in a core language (e.g., C++, Java, Rust, or similar), and a demonstrated eagerness to adopt new languages based on project need.
Foundational Knowledge: Solid working knowledge of networking technologies, web-based communication protocols, and relational databases (e.g., PostgreSQL, MySQL).
Software Development Workflow: Proficient in standard development tools, including version control (Git), task tracking (Jira), unit testing frameworks, and continuous integration/deployment (CI/CD) systems.
Tools: Working knowledge of build tools (Maven, Gradle, Yocto, etc.).
Education: Bachelor's degree in Software Engineering, Computer Science, Electrical Engineering, or equivalent practical experience. Fluent in English: verbal and written.
Adaptability & Curiosity: A genuine, long-term interest in software development and the continuous exploration of new tools and technologies; you view learning a new language as an exciting challenge.
Systemic Thinking: Passionate about creating elegant and scalable architectures and designs.
Collaborative & Communicative: Approachable, willing to openly share knowledge, and a creative thinker who enjoys discussing ideas.
Customer Focus: Focused on understanding the customer use cases and what's behind them to help provide an outstanding user experience in your designs.
Comfortable working in a Linux environment.
Prior hands-on experience with Rust-based software development.
Working front-end development experience with JavaScript-based frameworks (e.g., Svelte, Typescript/Angular).
Experience with cloud infrastructure provider solutions (e.g., Amazon Web Services) and container orchestration using Kubernetes.
Why Nanometrics?
Global Leader: Join a Canada's Best Managed Companies Platinum Club winner and a global leader in seismic solutions.
Work that Matters: Be part of a company committed to sustainable growth while making a global impact with work that is essential now and in the future.
Flexible Hybrid Work: Benefit from a flexible hybrid model (3 days in-office minimum: Tuesday, Wednesday, Thursday).
Generous Time Off: Start with a minimum of 3 weeks vacation, plus paid sick days and a company-wide holiday shutdown.
Day-One Benefits Coverage: Company-paid Health & Dental Benefits start from day one.
Wellness Support: Utilize a Health Spending & Wellness Account, which can be used for a wide variety of services (e.g., gym memberships, personal trainers, recreational activity fees etc.)
Financial Future: Benefit from an RRSP contribution matching program, a new TFSA option, and a company-wide corporate bonus program with a history of consistent payment.
Collaborate with the Best: Work and learn alongside high-performing teams and some of the industry's top minds.
Grow your career with us: We invest in your development through ongoing learning opportunities, including unlimited access to Udemy Business.
Passionate & Fun Team: Enjoy a passionate team culture with regular social activities (e.g., Summer & Holiday Events).
Salary Information:
The expected salary range for this position is $90,000 to $115,000, plus a corporate discretionary bonus. The determination of an applicant’s base salary within this range is based on the individual’s skills, competencies, and experience for the position.
Please note: This job posting is for an existing vacancy with Nanometrics. As part of our commitment to a comprehensive and unbiased hiring process, we may employ artificial intelligence (AI) to help us analyze applications and identify qualified candidates. This use of AI is intended to support, not replace, human decision-making.
Nanometrics is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all employees. Should you require accommodation as part of the recruitment and selection process, please reach out to careers@nanometrics.ca