For those currently located in the greater Portland OR area: would you enjoy a career where you make a positive difference to the environment?
As a software developer, you are responsible for the development of new product features, identifying and resolving software defects, and ensuring that all code changes are well-documented. You join a team of developers who are involved in the entire software development life cycle, from planning and design through development, implementation, deployment, and maintenance. Your role requires collaboration with team members, such as designers, product managers, and quality assurance engineers - to ensure high-quality code. You also work closely with issue reporters to clarify incomplete or inconsistent acceptance criteria, ensuring code changes meet all product requirements
About Windsor Solutions
Headquartered in Portland, Oregon and with a presence in Northampton, Massachusetts, we are an agile, growing company made up of motivated and talented team members who share a passion for the environment and finding solutions for our clients. Since 1998, we have been developing systems and streamlining processes so our governmental agency clients can do their jobs better; protecting and improving water, air, land, natural resources, or health exposures.
Windsor appreciates that good ideas can come from any member of the team and our core culture is about valuing everyone's input, no matter the position. We are team players and pragmatic innovators. Continuous learning and growth are also encouraged. Windsor is ready to help you be as successful as you can be and you will in turn be supporting other team members. Windsor has fostered an exceptional, positive work environment and developed a community that truly cares about one another.
Join Windsor to be part of an exciting and growing team of professionals.
Key Responsibilities:
Requirement Clarification:
Collaborating with issue reporters to clarify requirements when incomplete or inconsistent acceptance criteria are provided
Ensuring that requirements are fully understood before beginning development, minimizing miscommunication and ensuring accurate implementations
Working with stakeholders to resolve any ambiguities in project specifications and acceptance criteria
Feature Development and Maintenance:
Developing new product features based on project requirements and user needs
Maintaining and enhancing existing applications and systems to improve performance, scalability, and functionality
Collaborating with product managers and designers to translate requirements into functional software solutions
Bug Root Cause Identification and Resolution:
Identifying the root cause of software defects and implementing fixes to ensure smooth operation
Testing and troubleshooting software issues to maintain a high level of code quality and functionality
Ensuring that bug fixes are documented and properly integrated into the development workflow
Software Development Life Cycle (SDLC):
Participating in all stages of the SDLC, including; planning, design, development, implementation, deployment, and maintenance
Ensuring that software is developed following Windsor's best practices, and meeting established coding standards and guidelines and in accordance with technical architecture standards and direction
Collaborating with team members throughout the SDLC to deliver efficient and effective software solutions
Participating in software release and sprint activities: planning, daily scrum, demos, retrospectives and product releases
Algorithm Design and Efficient Coding:
Designing algorithms and flowcharts to outline software processes and solutions
Writing clean, efficient, and well-documented code that meets project requirements and user needs
Fully documenting all code changes according to Windsor's standard procedures, including; assumptions, test procedures, and relevant details for product documentation
Code Review and Quality Assurance:
Conducting code reviews with fellow developers to identify errors and ensuring consistency with established coding standards and practices.
Participating in peer reviews of other developers' work to maintain code quality and adherence to project requirements
Working closely with quality assurance engineers to ensure that software meets quality and performance standards before deployment
Documenting relevant information regarding code changes in story / bug tickets so that it can be incorporated into training materials and communicated to stakeholders
Qualifications
Education:
Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent experience)
General Experience:
Familiarity with the Agile software development life cycle and best practices in code development and testing.
Demonstrated experience in software development, working on full-stack applications or systems.
Experience with multiple programming languages and frameworks (JavaScript, C#, SQL etc.)
Technical Experience - Required:
ASP.NET
.NET 6/8
MS SQL Server
CSS
Technical Experience - Preferred/Highly Desired:
Blazor
jQuery
Skills and Competencies:
Strong problem-solving skills, with the ability to identify and resolve software defects efficiently
Proficiency in designing algorithms, writing clean code, and optimizing software for performance
Familiarity with code versioning tools (e.g., Git), CI/CD pipelines (e.g., Azure DevOps), and related SDLC tools (e.g., Jira)
Excellent collaboration and communication skills, with the ability to work effectively within cross-functional teams
Attention to detail and commitment to producing high-quality, reliable software
Strong documentation skills, with experience in maintaining detailed records of code changes and technical decisions