Key Responsibilities:
- Work with customers and colleagues to develop software specifications
- Use software design methodologies and tools to ensure robust and fully documented products are developed
- Use software tools to develop robust software components and systems that take account of the needs of software testers
- Communicate effectively with other software development groups, scientists, product evaluation and technical publications.
- Keep careful design and implementation records and provide appropriate documentation that facilitates others to further develop or maintain the software and systems that you produce.
- Must have strong design and project management skills and will be able to work with multidisciplinary teams to help R&D delivery product on time, high quality within budget
- Other tasks assigned by the Supervisor
Minimum Requirements/Qualifications:
- BS/MS in computer science / advanced scientific / engineering related majors.
- 10+ years of experience developing commercial software. Familiar with software development product life cycles from concept to development and product testing and final release.
- Mastery of object oriented design and design patterns (MVVM, MVC, MVP etc), and C# programming skills; other languages (C++, JAVA, Python, etc. will be considered).
- Strong knowledge of Microsoft technologies for WPF applications and client-server environment (WCF/Restful API).
- Familiar with Web GUI development (JavaScript/CSS/HTML5/VueJS/Angular/TypeScript).
- Familiar with ADO.NET: Entity Framework or other ORM framework, Unity or other IoC framework, NUnit/MbUnit or other test framework, and reporting tools (i.e. crystal report)
- Experience in database (i.e. SQL Server, Oracle, and MySQL), be good at database model and analysis capability (3 layers / multi layers structure, Object-Oriented Programming logic).
- Experience in Unit/Integration/system test based on complex hardware.
- Experience using performance and memory profiling tools.
- Familiar with Test Driven Development and Agile/SCRUM software methodology.
- Excellent language skill on English reading, speaking and writing.
- Strong responsibility, self-motivated and initiative.
Desired:
- Experience with instrument industry or automation & Control industry.
Please click here to email me.