1

Software Developer Jobs in Bigfork, MT (NOW HIRING)

Write control logic & software for Programmable Logic Controllers (PLC's). * Participate in efforts to automate and continuously improve NTC hardware configuration. * Attend meetings regarding ...

Software Engineering * Industrial Engineering (IE) * Manufacturing Engineering (MFE) MFEs operate primarily within Manufacturing & Industrial Engineering (Team 4) while also supporting: * ISG ...

Showing results 41-60

Software Developer information

See Bigfork, MT salary details

$43.1K

$100.3K

$148.9K

How much do software developer jobs pay per year?

As of Aug 12, 2026, the average yearly pay for software developer in Bigfork, MT is $100,346.00, according to ZipRecruiter salary data. Most workers in this role earn between $80,700.00 and $116,600.00 per year, depending on experience, location, and employer.

What are the key skills and qualifications needed to thrive as a software developer, and why are they important?

To thrive as a Software Developer, you need strong programming skills in languages like Java, Python, or JavaScript, as well as a solid understanding of computer science fundamentals and a relevant degree or equivalent experience. Familiarity with development tools such as Git, integrated development environments (IDEs), and frameworks like React or .NET is typically required, along with knowledge of agile methodologies or certifications. Problem-solving ability, attention to detail, teamwork, and effective communication are essential soft skills that help you excel in collaborative and fast-paced environments. These skills ensure you can build reliable, maintainable software and adapt to evolving project requirements and technologies.

Is a software developer still in demand?

Yes, software developers are in high demand due to ongoing digital transformation across industries. Skills in programming languages like Java, Python, and experience with cloud platforms increase employability, and the role is expected to grow as technology continues to advance.

What are some common challenges software developers face when working on team-based projects?

Software developers often encounter challenges such as coordinating with team members across different time zones, managing code integration from multiple contributors, and maintaining clear communication about project requirements. Effective use of version control systems like Git and regular participation in code reviews can help mitigate these issues. Additionally, adapting to evolving project goals and balancing technical debt with feature development are common hurdles that require strong collaboration and problem-solving skills.

What do software developers do?

Software developers design and create computer software programs and systems for their employer or client. Their job is to apply the principles of engineering, analytics, and computer science toward the development and testing of all kinds of software and applications. On a day-to-day basis, a software developer helps create and test software from start to finish. They discuss and analyze user requests and requirements, then research and brainstorm practical solutions to meet those needs, and determine the best course of action to create the application. As a software developer, you may develop an entirely new program or improve an existing one; you are responsible for a program’s overall framework and must design precise workflow charts that explain to programmers what code is needed for different aspects of the program.

What is the difference between Software Developer vs Software Engineer?

AspectSoftware DeveloperSoftware Engineer
CredentialsBachelor's degree in CS or related field; coding certificationsBachelor's or higher in CS or Software Engineering; certifications may vary
Work EnvironmentDevelops, tests, and maintains software applicationsDesigns and develops software systems; often involved in architecture
Industry UsageCommonly used in tech companies, startups, and IT firmsUsed interchangeably with Software Developer in many organizations

While the roles often overlap, Software Developers focus on coding and building applications, whereas Software Engineers typically work on designing and architecting complex systems. Both roles require similar credentials and are integral to software creation, but their scope and responsibilities can differ based on project size and company structure.

What is a software developer?

A Software Developer is a professional who designs, builds, tests, and maintains computer programs or applications. They use programming languages to create software solutions that meet user needs, whether for desktop, mobile, or web platforms. Software Developers work closely with other team members such as designers, analysts, and testers to ensure the final product is functional, reliable, and user-friendly. Their responsibilities can range from writing code and fixing bugs to collaborating on system architecture and deploying updates.
What cities near Bigfork, MT are hiring for Software Developer jobs? Cities near Bigfork, MT with the most Software Developer job openings:
Infographic showing various Software Developer job openings in Bigfork, MT as of August 2026, with employment types broken down into 1% Internship, 83% Full Time, 12% Part Time, and 4% Contract. Highlights an 87% Physical, 4% Hybrid, and 9% Remote job distribution, with an average salary of $100,346 per year, or $48.2 per hour.

Embedded Systems Engineer II

Nomad GCS

Columbia Falls, MT • On-site

$60K - $89K/yr

Full-time

Re-posted 26 days ago


Job description

This position requires that you must be a US Citizen for consideration and meet all Federal Contractor employee requirements. Nomad GCS does not support the H1B Visa for this position.
Nomad GCS is currently seeking a Level II Embedded Systems Engineer. Please note the Level II Expectation in red below.
Position: Embedded Systems Engineer II
Division: Innovative Solutions Group
Department: Embedded Systems & Human Factors Engineering
Status: Full-time
Overview: Nomad Global Communication Solutions (Nomad GCS) is a leading provider of communication and response products serving a wide range of customers. Our purpose is to be the solution when every minute matters. We are seeking Embedded Systems Engineers to help design, develop, and support the embedded hardware systems for Nomad Total Command™ (NTC) and other systems integrated into Nomad products.
Embedded Systems Engineers at Nomad GCS are responsible for the design, development, integration, testing, and lifecycle support of embedded hardware and firmware used within Nomad Total Command™ (NTC), as well as support of embedded systems across all Nomad products and platforms. This includes microcontrollers, embedded processors, sensors, control modules, communication interfaces, and operator control systems that enable deterministic control, automation, monitoring, and safe operation of capabilities across Nomad platforms.
Depending on level (I-V), Engineers progress from learning foundational engineering practices and supporting designs to independently leading complex system architectures, mentoring others, and driving technical strategy across the organization.
This position requires strong hands-on engineering capability combined with system-level thinking, enabling the engineer to diagnose complex system interactions, guide technical decisions, and improve the robustness and performance of embedded systems deployed in demanding environments.
Career Growth: Embedded Systems Engineers at Nomad GCS progress through five levels based on demonstrated technical mastery, independence, leadership, and impact. Advancement is supported through mentorship, ownership of embedded subsystems, and alignment with Nomad's Core Values.
Organizational Structure: Engineering is organized into Teams and Disciplines within the Innovative Solutions Division.
Teams:
o Team 1 - Standards and Modularity: Builds and maintains engineering standards, modules, templates, and rules enabling repeatability and scale.
o Team 2 - Design: Executes project-level engineering using established standards and less complex custom configurations.
o Team 3 - Advanced: Develops novel systems and resolves first-of-kind engineering challenges.
o Team 4 - Manufacturing & Industrial Engineering: Ensures manufacturability, safety, engineering intent, efficiency, and continuous improvement throughout Production.
Disciplines:
o Mechanical Engineering
o Electrical Engineering
o IT Engineering
o Human Factors Engineering
o Embedded Systems Engineering (where this role is located)
o Software Engineering
An Embedded Systems Engineer may be temporarily assigned to one or more of the four Teams and support Standards and Modularity, Design Engineering, Advanced Engineering, and/or Manufacturing & Industrial Engineering.
Core Responsibilities - All Levels:
  • Design, develop, and support embedded hardware and firmware used within Nomad Total Command (NTC) and other Nomad platforms.
  • Develop firmware and control logic using C/C++ for microcontrollers and embedded processors supporting modules and control interfaces.
  • Write logic that bridges embedded hardware with NTC software using C/C++ and other languages.
  • Specify/test new embedded computers, network switches, and other hardware for NTC or other Nomad platforms.
  • Integrate sensors, actuators, networking interfaces, and operator control systems used by the NTC platform.
  • Design and troubleshoot embedded systems using CAN, SPI, I²C, UART, Ethernet, and related protocols used within various communication networks.
  • Ensure systems exhibit deterministic and predictable behavior, particularly in real-time or near real-time environments.
  • Review, edit, or write JSON based configuration files.
  • Implement error logging, as well as frequent "health checks" and hardware status updates.
  • Drive improvements in reliability through testing, diagnostics, and design iteration.
  • Diagnose complex interactions between hardware, firmware, networking, and electrical systems.
  • Work within Linux-based environments, including containerized environments (Docker).
  • Flash embedded firmware for micro-controlled hardware and sensors.
  • Write control logic & software for Programmable Logic Controllers (PLC's).
  • Participate in efforts to automate and continuously improve NTC hardware configuration.
  • Attend meetings regarding upcoming builds, take meaningful notes, and actively participate:
    • Proposal Reviews;
    • Sales/Project Management Kickoffs;
    • SPN reviews, Initial Design Reviews (IDR), and Executive Design Reviews (EDR); and
    • Actively participate in Executive Reviews and document any findings.
  • Configure, or aid in configuring NTC hardware for production projects, ensuring configuration is accurate and aligns with customer requirements and intended system operation.
  • Assist production team(s) with troubleshooting NTC issues.
  • Design or assist in designing printed circuit boards (PCB's)
  • Participate in design reviews, testing, validation, and root cause analysis of embedded hardware and control behavior.
  • Work closely with Software Engineering to define hardware abstraction layers (HAL's) and other methods to translate software commands into hardware actions.
  • Assist software in defining how hardware data/control should be presented in the NTC frontend.
  • Develop and improve embedded systems with the goal that hardware control logic is independent of NTC software functionality.
  • Design systems with strong emphasis on fault tolerance, redundancy, and predictable failure behavior.
  • Assist field and production teams in resolving challenging system-level issues.
  • Prototype and test next-generation capabilities including, but not limited to:
    • Automation systems
    • Advanced sensor integration
    • AI-assisted monitoring
    • Autonomous subsystems
    • Vehicle information system integration (CAN)
    • Self-deployment capabilities (SLAM, Sensor-Fusion, Computer Vision etc.)
    • Edge machine learning
    • Predictive maintenance capabilities
    • Subsystem data acquisition for local inference.
  • Identify opportunities to improve operational awareness, system automation, and reliability.
  • Collaborate cross-functionally with Mechanical Engineering, Electrical Engineering, IT Integration, Human Factors Engineering, Software Engineering, Production, Quality, and Program Management teams to ensure embedded systems integrate cleanly with platform subsystems.
  • Apply continuous improvement principles to improve reliability, determinism, manufacturability, and maintainability of embedded hardware.
  • Produce clear technical documentation including:
    • Engineering notes
    • Troubleshooting guides
    • Test procedures
    • Technical design documentation
    • System changes, firmware updates, and hardware improvements.
  • Translate operational feedback into engineering improvements.
  • Uphold and model Nomad Core Values in all work.
  • Perform additional duties as assigned.

Level Expectations:
Embedded Systems Engineer l - Entry / Developing
  • Support senior engineers with firmware development tasks and documentation related to NTC embedded modules.
  • Assist with embedded development using C/C++ and microcontroller platforms used within NTC and other Nomad platforms.
  • Participate in prototype builds, testing, and debugging activities for embedded hardware.
  • Learn Nomad embedded standards, communication protocols, and NTC configuration processes.
  • Gain familiarity with CAN, SPI, I²C, UART, and Ethernet communication used within embedded hardware networks.
  • Assist with basic or semi-complex engineering projects.
  • Work under close supervision while building technical competence.
  • 0-2 years embedded systems or related engineering experience.

Progression signal: Learns quickly, reduces rework, completes tasks correctly on the first pass with attention to detail. Continuously takes ownership of assigned tasks and takes initiative. Communicates effectively and professionally with relevant stakeholders.
Embedded Systems Engineer ll - Independent Contributor
  • Independently develop firmware for embedded subsystems and control modules.
  • Implement control logic, state machines, and communication interfaces supporting NTC functionality.
  • Create production-ready embedded code and configuration for NTC hardware.
  • Participate in NTC hardware bring-up, integration, and troubleshooting.
  • Support manufacturing troubleshooting and resolve moderate NTC system issues.
  • Participate actively in design reviews and cross-functional collaboration with supporting disciplines.
  • Participate in advanced engineering projects requiring new features or complex logic.
  • 2-5 years embedded systems engineering experience.

Progression signal: Can be trusted to deliver correct and quality embedded solutions under minimal supervision. Takes full ownership of projects and remains composed under pressure. Trusted to lead tasks assigned to them including leading design reviews, mentoring others, and taking initiative to continuously improve quality of work.
Embedded Systems Engineer lll - Advanced / System-Level
  • Lead embedded design for major subsystems or platform-level control modules.
  • Architect deterministic control logic and embedded communications supporting system behavior.
  • Troubleshoot complex NTC system failures and lead root cause analysis.
  • Mentor Embedded Systems Engineer I-II team members on NTC architecture and embedded development practices.
  • Participate in advanced engineering efforts for novel features.
  • Optimize embedded designs for reliability, serviceability, and performance.
  • Demonstrate ownership of NTC subsystem behavior and embedded control logic.
  • 5-8 years embedded systems engineering experience.

Progression signal: Deep understanding of embedded systems. Follows best practices in firmware, embedded architecture, and continuously raises the technical bar for the team. Ensures embedded systems are secure, reliable, and new implementations are correct, scalable, and maintainable.
Embedded Systems Engineer lV - Senior / Technical Lead
  • Define embedded design standards, guidelines, and best practices for NTC hardware and firmware development.
  • Lead highly complex or safety-critical Embedded Systems Engineering efforts.
  • Drive design decisions impacting safety, reliability, and scalability of embedded systems.
  • Serve as a primary technical authority for NTC embedded hardware.
  • Coach and mentor engineers across all levels.
  • 8-12+ years advanced embedded systems engineering experience.

Progression signal: Owns high-impact decisions regarding architecture, tool chains, and methodologies that the team uses to produce quality embedded systems. The team relies on this engineer's judgement in critical situations.
Embedded Systems Engineer V - Principal / Strategic Leader
  • Define and evolve Nomad's long-term NTC embedded platform architecture.
  • Lead cross-disciplinary technical initiatives related to embedded systems across engineering and manufacturing.
  • Serve as the highest-level technical authority for NTC embedded hardware and firmware.
  • Drive innovation and technology adoption that advances the Nomad platforms.
  • Mentor senior engineers and develop future technical leaders.
  • 12+ years' experience with organizational technical leadership.

Progression signal: This engineer shapes what the organization builds next. Including future improvements, novel designs and is an expert in embedded systems.
Basic Knowledge Progression:
  • Level l: Foundational understanding of microcontrollers, firmware development, and debugging tools used within NTC embedded systems.
  • Level ll: Strong working knowledge of embedded protocols and subsystem integration supporting NTC modules.
  • Level lll: System-level expertise and troubleshooting mastery of NTC embedded hardware and communications.
  • Level lV: Platform-level architecture and technical leadership for the NTC embedded system.
  • Level V: Enterprise-level strategy, innovation, and mentorship guiding the evolution of the NTC embedded platform.

Qualifications & Preferred Skills:
  • Proficiency in C/C++ for embedded systems required.
  • Experience working in Linux environments required.
  • Basic networking knowledge required, advanced preferred.
  • Bachelor's Degree in Computer Engineering or related preferred.
  • Working knowledge of relational database systems preferred.
  • Experience with FreeRTOS or other RTOS platforms preferred.
  • Exposure to closed-loop control in robotics, automotive, aerospace or similar preferred.
  • Working knowledge of JavaScript, React, and/or similar object-oriented programming preferred.

Physical Demands:
  • Ability to stand and sit for extended periods.
  • Manual dexterity to operate office equipment.
  • Occasionally lift and/or move up to 20 pounds.
  • Occasional climbing or hands-on testing activities.
  • Ability to work in office, shop, and vehicle environments as needed.
  • Ability to work safely around energized systems when required.
  • Must be able to travel as needed on occasion.

Working Environment: