Software Engineer in Orono, Maine at COMPOTECH INC
Explore Related Opportunities
Job Description
Job Title: Software Engineer
Department: Digital Solutions
Reports To: Digital Solutions Director, Engineering Innovation
Position Overview: The Software Engineer will play a pivotal role in advancing Compotech’s next generation of specialized software and hardware systems—an endeavor befitting a company recognized as both a Small Business Association honoree and the New England Manufacturer of the Year. Excellence may be our habit, but innovation is our sport. In this position, you will design and refine sophisticated software algorithms and user interfaces that support high-speed digital image processing and scientific visualization. Your work will also include applying machine learning and artificial intelligence techniques to image segmentation, developing new code with precision, and resolving issues in existing code with equal parts rigor and patience! Collaboration is essential. The Software Engineer will communicate effectively within cross-functional teams, contribute meaningfully to technical discussions, and provide clear status updates that help keep projects aligned with both product requirements and established quality standards. After all, maintaining award-level performance requires more than technical acumen; it calls for coordinated, energetic teamwork.
Essential Duties and Responsibilities:
- Implement new software code/algorithms and perform troubleshooting, bug fixes, or maintenance of existing code using Git revision control.
- Assist with the development of special purpose computer software and hardware systems.
- Develop software algorithms and user interfaces related to high-speed digital image processing and scientific visualization of large image datasets.
- Apply machine learning and artificial intelligence techniques to image segmentation.
- Support the Program Manager’s efforts to comply with product requirements, technical and financial reporting, budget and schedule constraints, and quality control measures.
- Communicate verbally and in writing with team members to ensure results meet system requirements and customer specifications.
- Participate in internal and external team meetings and provide periodic status updates and documentation to the Project Manager.
Required Qualifications / Skills:
- Bachelor’s degree in Computer Science, Computer Engineering, Information Technology. Master’s degree preferred.
- Experience with software development and GUI design.
- Programming language proficiency in Python.
- Familiarity with web development frameworks such as Vue, React, or Next.js.
- Experience with backend client-server architecture technologies such as Flask, Express, Django.
- Experience with scientific data visualization concepts.
- Programming experience with machine learning libraries such as PyTorch or TensorFlow.
- Understanding of database development and administration.
- Competency with IDEs and tools contained such as VS Code, JetBrains, or NeoVim.
- Experience with source control tools such as Git.
- Understanding of basic CI/CD concepts and tools such as GitHub or GitLab.
- Competency with physics and associated math (coordinate systems, velocity, matrices, etc.).
- Expertise with operating system usage such as Windows and Linux.
- Experience with Microsoft Office (Excel, Word, PowerPoint).
- Conceptual planning and multi-tasking ability.
- Problem-solving skills.
- Strong communication, reporting, and presentation skills.
- MUST BE A US CITIZEN
Preferred Qualifications / Skills:
- Experience with full-stack development.
- Experience with writing full-coverage testing (end-to-end, integration, unit).
- Programming proficiency in JavaScript.
- Experience with Rust, C, and/or other programming languages.
- Experience with various common Python libraries such as NumPy, SciPy, Pydantic, Plotly, PyTest, UV, Ruff, and pre-commit.
- Experience with programming in Jupyter Notebooks.
- Experience with the Vue and Vuetify web frameworks.
- Experience with Trame backend technology.
- Experience with the VTK scientific data visualization library.
- Programming experience with PyTorch and PyTorch Lightning pipelines.
- Experience with MongoDB and/or PostgreSQL.
- Understanding of cloud development, such Docker and AWS.
- Experience with network engineering such as NGINX or Apache.
- Expertise with the Linux command-line interface.
- Experience with developing CI/CD pipelines.
- Experience using AI tools such as ChatGPT, GitHub Copilot, and Claude Code.
- Understanding of Linear Algebra and Calculus.
- Experience with Microsoft Services (Outlook, Teams, SharePoint, Planner).
Compotech Inc. is an equally-opportunity employer that is committed to diversity and inclusion in the workplace. We prohibit discrimination and harassment of any kind as outlined by federal, state, or local laws.
Requirements: