• Senior Software Engineer (C#)

    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.