12 Oct
|
Phoenix Contact
|
Faridabad
12 Oct
Phoenix Contact
Faridabad
Role: Software Developer C#/.NET
Work Experience: 4-9 Years
Purpose of the position:
The purpose of this position is to leverage advanced expertise in C# and .NET development to design, develop, and maintain high-quality software applications. The Senior C# and .NET. The developer will be responsible for the ongoing development of PLCnext Engineer and additional tools based on a software platform.
The .NET Developer will play a crucial role in implementing user interfaces using WPF/WinUI 3, applying design patterns to solve complex software problems, and ensuring adherence to coding standards and best practices. This position aims to contribute to the continuous improvement of software quality by writing clean, maintainable, and efficient code, and collaborating effectively with other developers and teams.
Scope of Responsibility:
Main tasks
- Develop and Maintain Software Applications: Design, develop, and maintain high-quality software applications using C# and .NET technologies.
- Implement User Interfaces: Create and implement user interfaces using Windows Presentation Foundation (WPF) and Win UI 3.
- Apply Design Patterns: Utilize design patterns to solve complex software problems and ensure robust and scalable solutions.
- Apply Coding Standards: Adhere to coding standards and best practices to maintain code quality and consistency.
- Write Clean Code: Write clean, maintainable, and efficient code following Clean Code principles.
- Collaborate: Work closely with other developers and teams to continuously improve software quality and development processes.
- Utilize ALM: Create and maintain workitems in Polarion ALM.
Auxiliary Tasks
- Code Reviews: Participate in code reviews to ensure code quality and share knowledge with team members.
- Documentation: Create and maintain technical documentation for developed software and processes.
- Unit Testing: Create and maintain unit tests for your Code. QA Support: Assistin the development and execution of integration and automated tests to ensure software reliability in close collaboration with QA staff.
- Mentorship: Provide guidance and mentorship to junior developers to help them grow their skills and knowledge.
- Self Improvement: Stay updated with the latest industry trends, technologies, and best practices to continuously improve development processes and software quality.
- Troubleshooting: Identify and resolve software defects and performance issues in a timely manner.
- Requirements Engieering: Work closely with stakeholders, including product managers and designers, to understand requirements and deliver high-quality software solutions.
Periodic Tasks
- Product Increment Planning: Participate in bi-yearly PIP to understand, discuss, clarify and estimate feaures for the next development cycle with the team,
Product Management and Product Owner.
- Sprint Reviews: Present own work results after each sprint to the team, Product Management and Product Owner.
- Sprint Planning: Plan and synchronize work tasks with the team for the following sprint.
Potential Emergencies
- Security Breaches: Unauthorized access or security breaches that compromise sensitive data and system integrity.
- Critical Bugs: Discovery of critical bugs or defects in the software that significantly impact user experience or system performance.
- Performance Issues: Severe performance degradation that affects the responsiveness and usability of the software applications.
- Bug evaluation and fixing for critical and blockers, in particular as reported by customers.
Job Requirement
Experience
- C# and .NET Development: Extensive experience in developing software applications using C# and .NET technologies using IDEs like.
- WPF (Windows Presentation Foundation): Proficiency in creating and implementing user interfaces using WPF or WinUI3.
- Design Patterns: Strong understanding and practical application of design patterns to solve complex software problems.
- Coding Standards and Best Practices: Adherence to coding standards and best practices to ensure high-quality and maintainable code.
- Clean Code Principles: Ability to write clean, maintainable, and efficient code following Clean Code principles.
- Software Development Lifecycle: Experience with the full software development lifecycle, including requirements gathering, design, development, testing, and deployment.
- Experience in the field of industrial automation, in particular IEC 61131 languages, PROFINET networks, OPC UA,
- Experience with Polarion, GitLab/GitGo
- Cyber Security experience
- Experience using 3rd party UI frameworks like Telerik UI
- Ability to identify and resolve performance or memory issues using profilers like dotTrace/dotMemory
- Experience with AI assisted coding.
Education
- A bachelor's degree in Computer Science, Information Technology, Software or Electrical Engineering, or a related field.
Language
- Fluent English is a requirement
Qualifications
- At least 4 years of experience in C# and .NET software development, preferably in an Agile or Scrum development process
- Experience with design patterns and their practical application.
- Familiarity with coding standards and best practices.
- Ability to write clean, maintainable, and efficient code.
- Commitment to continuous learning and staying updated with the latest trends and best practices in software testing and quality assurance.
- Experience with PLCnext Engineer or similar software tools is desirable.
Subject Matter Expertise
- C# and .NET Technologies: Deep understanding and extensive experience in developing software applications using C# and .NET frameworks.
- Design Patterns: Expertise in applying design patterns to solve complex software problems and ensure robust, scalable solutions.
- Software Architecture: Strong knowledge of software architecture principles and the ability to design and implement scalable, maintainable, and efficient software systems.
- Clean Code Principles: Mastery of Clean Code principles to write clean, maintainable, and efficient code.
- Coding Standards and Best Practices: In-depth knowledge of coding standards and best practices to ensure high-quality and consistent code.
- Experience in the field of industrial automation, in particular IEC 61131 languages, PROFINET networks, OPC UA
- Windows Presentation Foundation (WPF): Proficiency in creating and implementing user interfaces with WPF, including knowledge of XAML and data binding.
Practical Skills
- C# Programming: Proficiency in writing, debugging, and optimizing code in C#.
- .NET Framework: Extensive experience with the .NET framework, including .NET Core and .NET.
- Design Patterns: Practical application of design patterns to create scalable and maintainable software solutions.
- Clean Code Practices: Writing clean, maintainable, and efficient code following Clean Code principles.
- Version Control Systems: Proficiency with version control systems such as Git for managing code repositories.
- Unit Testing: Experience in writing and executing unit tests to ensure code quality and reliability.
- Software Documentation: Ability to create and maintain technical documentation for developed software and processes.
- WPF (Windows Presentation Foundation): Ability to design and implement user interfaces using WPF/WinUI 3, including knowledge of XAML and data binding.
Technical Skills
- Proficiency in C# and .NET development.
- Robust knowledge of Windows Presentation Foundation (WPF) for creating user interfaces.
- Experience with design patterns and their practical application.
- Familiarity with coding standards and best practices.
- Ability to write clean, maintainable, and efficient code.
Soft Skills
- Time Awareness Reliable adherence to deadlines and efficient task prioritization
- Quality Orientation Strong attention to detail and commitment to high standards
- Cost Awareness Sensible use of resources with focus on cost-effective decisions
- Team & Communication Skills – Transparent, respectful collaboration across teams and roles
📌 Asp.Net Software Developer (Faridabad)
🏢 Phoenix Contact
📍 Faridabad