C# Socket Programming Developer

Apply Now

Company: My3Tech

Location: Houston, TX 77084

Description:

Job Title: C# Socket Programming Developer

Location: 5 days onsite, needing someone in houston

Sub Vending is fine

Job Summary:

We are seeking a skilled C# Socket Developer to develop high-performance networking application to communicate with remote I/O devices. The ideal candidate will have expertise in TCP/IP, UDP, WebSockets, and multi-threaded programming in C#. The candidate will work on real-time communication systems, client-server applications, and network protocols.

Required :

Project Overview Connection to Hardware Device: The application needs to connect to a hardware device, which will be provided by an external vendor. Data Handling: TCP will be used to fetch data, get package information, and process the data for internal software.

Key Responsibilities:
  • Develop and maintain socket-based communication systems in C#.
  • Implement TCP, UDP, and WebSockets for real-time data transmission.
  • Design multi-threaded applications ensuring efficient data processing.
  • Optimize network latency and performance for high-throughput applications.
  • Debug and troubleshoot network issues, connection failures, and data loss.
  • Implement asynchronous programming and event-driven architecture.
  • Ensure secure communication using encryption (SSL/TLS) and authentication mechanisms.
  • Write unit tests, integration tests, and performance benchmarks for networking code.
  • Collaborate with backend, frontend, and DevOps teams to ensure seamless application integration.

Required Skills & Qualifications:
5+ years' experience using C++, C# and .NET Core/.NET Framework.
Experience with System.Net.Sockets for TCP/UDP communication.
Understanding of socket lifecycle (connect, send, receive, close).
Expertise in multi-threading, parallel programming, and async programming.
Knowledge of networking concepts (IP addressing, ports, protocols, firewalls).
Familiarity with WebSockets, RabbitMQ for real-time applications.
Experience working with Windows Services, Linux sockets, or embedded systems (preferred).
Knowledge of REST APIs and microservices architecture (plus).
Bachelor's degree in Computer Science, Engineering, or a related field.

Required :

Project Overview Connection to Hardware Device: The application needs to connect to a hardware device, which will be provided by an external vendor. Data Handling: TCP will be used to fetch data, get package information, and process the data for internal software.

  • Candidate Onboarding Technical Requirements
  • Programming Languages: 80% C# 20% C++ (legacy systems, medium-level knowledge required, not embedded development)
  • Frameworks: .NET Core (future-ready development) Legacy .NET Framework (backend communication via RabbitMQ)
  • Operating Systems: Mostly desktop Windows-based
  • Databases: MongoDB (nice to have)
  • Messaging Tools: RabbitMQ (required, no other messaging tools)
  • Communication Protocols: WebSockets (to communicate with hardware)
  • TCP, UDP Security: Must have experience with SSL/TLS
  • Collaboration: Day-to-day basis for collaboration Git repository for integration
  • Data Handling: Data level acquisitions ongoing Data needs to be transferred to other systems using multiple threads Programming Techniques: Medium-level knowledge of asynchronous programming System.Net.Sockets is required


  • Additional Requirements: Containerizable and ready for microservices (nice to have) QA person available to assist with testing (developer does not need to do their own testing)

    Similar Jobs