Position: Senior C# Software Developer
Company: Optime
Experience required: 3y
English level: intermediate

**Responsibilities:**
We are looking for an experienced C# .Net Core Software Developer. The successful candidate will be responsible for the design, integration, implementation of features, and bug fixing of the video streaming management systems. You will work in a collaborative team environment that encourages you to perform at your best and challenges you to engineer elegant solutions to complex problems. You will work with other developers and technical leads to design and develop robust designs and components for high-performance critical workflows.

**What you will do:**
— Actively contribute as a Software Developer on an agile development team
— Design and implement critical features based on product requirements
— Work closely with the design team and PLM throughout the development process, from initial design to software integration
— Maintain existing functionality and provide engineering support for released products
— Successfully meet the targeted project timeline (Target vs. Actual) and objectives
— Analyze and tune system designs to identify and eliminate performance bottlenecks Identify process improvement opportunities and lessons learned with the team, and functional areas and communicate recommendations
— Foster and maintain collaborative relationships with internal/external customers, ensuring objectives and customer satisfaction are achieved
Unit test, system test, integration, and general troubleshooting of media centric software systems
— Research/ technical evaluation of relevant technologies for the real-time control and monitoring system
— Working with customers and product line mangers to specify robust system designs for the purposes of distributing broadcast quality media

**Requirements:**
— Minimum 5 years experience with software development in Windows environment
— 3+ years experience in developing applications using C#, .NET Core 2.0+
— Good experience in programming multithreaded applications
— Good understanding of object-oriented programming and design patterns
— Experience in troubleshooting issues related to memory and performance
— Detail oriented with an ability to learn quickly in a dynamic environment
— A track record of successful product delivery meeting time, budget, functionality, and quality targets
— Well-developed communication skills
— Experience with large scale, real time software development

**Nice to Have:**
— Good experience in network programming and troubleshooting
— Hands-on experience creating and utilizing virtual machines and containers for service development and testing
— Experience developing Microservices
— Hands-on experience creating and utilizing virtual machines and containers for service development and testing

**Profits you can get:**
— Ability to work 100% remotely, hybrid, or from the office
— Work only 4 days a week, 10 hours per day