The Senior Software Engineer (with hardware interfacing) is responsible for the design delivery support and improvement of complex in-house software applications in a laboratory environment in a variety of languages (primarily C# and WPF). They design and develop solutions based on scientific test specifications and/or laboratory requirements which acquire data from laboratory apparatus and provide intuitive user interfaces needed to accomplish complex scientific tasks. They perform coding debugging testing and troubleshooting throughout the software development life cycle and they work with onsite laboratory staff to help diagnose and resolve problems in software/hardware interfaces.
This position will need to be on-site at the Farmingdale NY facility as needed.
- Leads development projects to provide new or enhanced functionality for internal and external customers external customers.
- Designs codes tests and documents new systems or enhancements to existing systems and prepares the appropriate documentation.
- Applies the principles of software engineering to the design development maintenance testing and evaluation of computer software.
- Executes full software development life cycle (SDLC).
- Develops flowcharts layouts and documentation to identify requirements and solutions.
- Writes well-designed testable code.
- Provides implementation and post-implementation triage and support of business software solutions by programming and/or configuring enhancements to new or packaged-based systems and applications.
- Produces specifications and determines operational feasibility.
- Integrates software components into a fully functional software system.
- Develops software verification plans and quality assurance procedures.
- Oversees development of test data system testing and documentation for all phases of the software development life cycle.
- Performs quality assurance on applicable functionality.
- Documents and maintains software functionality. Reviews and makes changes to technical specifications and documentation.
- Troubleshoots debugs and upgrades existing systems.
- Deploys programs and evaluates user feedback.
- Ensures software is updated with latest features.
- May oversee the training of users in operating procedures for application.
- Complies with project plans and industry standards.
- Adheres to internal standards policies and procedures.
- Performs other duties as assigned.
- May assume a team lead role for the work group and may lead projects
Qualifications :
Education and Experience
- Bachelors degree in information technology Computer Science Computer Engineering or related discipline (Required)
- Solid understanding and experience designing troubleshooting interfacing software applications with low voltage electronic circuits (Required)
- Hands-on experience with Multi-Function DAQ (Data Acquisition) devices featuring multi-channel analog inputs/outputs and digital I/O. Experience includes signal conditioning channel calibration and developing software interfaces for data acquisition and analysis. (Preferred)
- 7 years of experience including 3 years experience as a senior software engineer
- Expertise in at least one compiled language (Java C C# etc.)
- Solid understanding of software engineering principles frameworks and technologies
- Prior experience directly gathering and analyzing end user requirements
Knowledge Skills and Abilities
- Demonstrated software development experience in computational science engineering computer science or applied math. (Required)
- Strong customer service orientation (Required)
- Ability to work effectively in a team environment and as individual contributor (Required)
- Excellent analytical reasoning and problem-solving skills (Required)
- Excellent organizational and time management skills (Required)
- Excellent verbal and written communication and interpersonal skills (Required)
- Highly focused attention to detail (Required)
- Project management skills and ability to manage complex projects (Required)
Computer Skills
- Software development specifically desktop applications using C# and one or more of the following: WPF WinForms (Required)
- Software development .NET Core Angular Entity Framework SQL and/or Relational DB (Preferred)
- Software development in a team environment using MS Azure DevOps (Required)
- Internal/external client support (Required)
- Troubleshoot problems and solving bugs (Required)
- Software design patterns (Required)
- Data encapsulation (Required)
- Object Oriented Design (Required)
- Functional programming (Required)
- Unit Testing (Required)
- Interconnect hardware and software (e.g. PLCs using actuators and scales) (Required)
- Data structures and operating systems internals (Required)
- Windows operating systems (Required)
Our Benefits
We care about your total well-being and will support you with the following subject to your location and role.
- Health: Medical dental and vision insurance life insurance employee wellness programs
- Wealth: Competitive pay 401(k) with company match (immediate vesting upon enrollment) employee referral program
- Happiness:
- Professional Growth: Online training courses virtual and classroom development experiences tuition reimbursement program
- Work-Life Balance: Paid-time off (vacation sick company holidays floating holidays volunteer time)
Additional Information :
SGS is an Equal Opportunity Employer and as such we recruit hire train and promote persons in all job classifications without regard to race color religion sex national origin disability age marital status sexual orientation gender identity or expression genetics status as a protected veteran or any other characteristics protected by law.
To perform this job successfully an individual must be able to perform each essential duty satisfactorily with or without reasonable accommodations. The requirements listed above are representative of the knowledge skills and/or abilities required.
This job description should not be construed as an exhaustive statement of duties responsibilities or requirements but a general description of the job. Nothing contained herein restricts the companys rights to assign or reassign duties and responsibilities to this job at any time.
If you are applying for a position within the United States and you have difficulty completing the on-line employment application because of a disability please call for assistance and leave a message. You will receive a call back. Please note this phone number is not for general employment information but is only for individuals who are experiencing difficulty applying for a position due to a disability.
Remote Work :
No
Employment Type :
Full-time
The Senior Software Engineer (with hardware interfacing) is responsible for the design delivery support and improvement of complex in-house software applications in a laboratory environment in a variety of languages (primarily C# and WPF). They design and develop solutions based on scientific test s...
The Senior Software Engineer (with hardware interfacing) is responsible for the design delivery support and improvement of complex in-house software applications in a laboratory environment in a variety of languages (primarily C# and WPF). They design and develop solutions based on scientific test specifications and/or laboratory requirements which acquire data from laboratory apparatus and provide intuitive user interfaces needed to accomplish complex scientific tasks. They perform coding debugging testing and troubleshooting throughout the software development life cycle and they work with onsite laboratory staff to help diagnose and resolve problems in software/hardware interfaces.
This position will need to be on-site at the Farmingdale NY facility as needed.
- Leads development projects to provide new or enhanced functionality for internal and external customers external customers.
- Designs codes tests and documents new systems or enhancements to existing systems and prepares the appropriate documentation.
- Applies the principles of software engineering to the design development maintenance testing and evaluation of computer software.
- Executes full software development life cycle (SDLC).
- Develops flowcharts layouts and documentation to identify requirements and solutions.
- Writes well-designed testable code.
- Provides implementation and post-implementation triage and support of business software solutions by programming and/or configuring enhancements to new or packaged-based systems and applications.
- Produces specifications and determines operational feasibility.
- Integrates software components into a fully functional software system.
- Develops software verification plans and quality assurance procedures.
- Oversees development of test data system testing and documentation for all phases of the software development life cycle.
- Performs quality assurance on applicable functionality.
- Documents and maintains software functionality. Reviews and makes changes to technical specifications and documentation.
- Troubleshoots debugs and upgrades existing systems.
- Deploys programs and evaluates user feedback.
- Ensures software is updated with latest features.
- May oversee the training of users in operating procedures for application.
- Complies with project plans and industry standards.
- Adheres to internal standards policies and procedures.
- Performs other duties as assigned.
- May assume a team lead role for the work group and may lead projects
Qualifications :
Education and Experience
- Bachelors degree in information technology Computer Science Computer Engineering or related discipline (Required)
- Solid understanding and experience designing troubleshooting interfacing software applications with low voltage electronic circuits (Required)
- Hands-on experience with Multi-Function DAQ (Data Acquisition) devices featuring multi-channel analog inputs/outputs and digital I/O. Experience includes signal conditioning channel calibration and developing software interfaces for data acquisition and analysis. (Preferred)
- 7 years of experience including 3 years experience as a senior software engineer
- Expertise in at least one compiled language (Java C C# etc.)
- Solid understanding of software engineering principles frameworks and technologies
- Prior experience directly gathering and analyzing end user requirements
Knowledge Skills and Abilities
- Demonstrated software development experience in computational science engineering computer science or applied math. (Required)
- Strong customer service orientation (Required)
- Ability to work effectively in a team environment and as individual contributor (Required)
- Excellent analytical reasoning and problem-solving skills (Required)
- Excellent organizational and time management skills (Required)
- Excellent verbal and written communication and interpersonal skills (Required)
- Highly focused attention to detail (Required)
- Project management skills and ability to manage complex projects (Required)
Computer Skills
- Software development specifically desktop applications using C# and one or more of the following: WPF WinForms (Required)
- Software development .NET Core Angular Entity Framework SQL and/or Relational DB (Preferred)
- Software development in a team environment using MS Azure DevOps (Required)
- Internal/external client support (Required)
- Troubleshoot problems and solving bugs (Required)
- Software design patterns (Required)
- Data encapsulation (Required)
- Object Oriented Design (Required)
- Functional programming (Required)
- Unit Testing (Required)
- Interconnect hardware and software (e.g. PLCs using actuators and scales) (Required)
- Data structures and operating systems internals (Required)
- Windows operating systems (Required)
Our Benefits
We care about your total well-being and will support you with the following subject to your location and role.
- Health: Medical dental and vision insurance life insurance employee wellness programs
- Wealth: Competitive pay 401(k) with company match (immediate vesting upon enrollment) employee referral program
- Happiness:
- Professional Growth: Online training courses virtual and classroom development experiences tuition reimbursement program
- Work-Life Balance: Paid-time off (vacation sick company holidays floating holidays volunteer time)
Additional Information :
SGS is an Equal Opportunity Employer and as such we recruit hire train and promote persons in all job classifications without regard to race color religion sex national origin disability age marital status sexual orientation gender identity or expression genetics status as a protected veteran or any other characteristics protected by law.
To perform this job successfully an individual must be able to perform each essential duty satisfactorily with or without reasonable accommodations. The requirements listed above are representative of the knowledge skills and/or abilities required.
This job description should not be construed as an exhaustive statement of duties responsibilities or requirements but a general description of the job. Nothing contained herein restricts the companys rights to assign or reassign duties and responsibilities to this job at any time.
If you are applying for a position within the United States and you have difficulty completing the on-line employment application because of a disability please call for assistance and leave a message. You will receive a call back. Please note this phone number is not for general employment information but is only for individuals who are experiencing difficulty applying for a position due to a disability.
Remote Work :
No
Employment Type :
Full-time
View more
View less