Senior Software Engineer
Job Description
Our client is seeking a Senior Software Engineer to join their team in Windsor, ON. The ideal candidate will have a minimum of 4 years of practical experience in developing software with knowledge in GO frameworks, C, C++, MySQL, and Git.
This is a full-time, on-site role offering competitive compensation, a great work environment, and the potential for advancement within an innovative and growing company.
Responsibilities:
- Contribute detailed design, coding, integration, documentation, and testing efforts for new and ongoing projects.
- Interact with customers for requirements gathering, bug reporting, and technical assistance.
- Participate in design decisions, including new technology research and prototyping.
- Collaborate closely with other engineers, architects, and support teams.
- Participate in mentoring junior software engineers.
Qualifications:
- Minimum 4 years of practical experience developing software.
- Minimum 2 years of experience with GO (GoLang).
- Knowledge of various GO frameworks and tools.
- Practical experience with C and C++.
- Proficient understanding of code versioning with Git.
- Good knowledge of HTTP/JSON/REST/Webservice/Messaging.
- Experience in developing cross-platform software.
- Experience with client/server software development and common protocols (e.g., TCP, UDP)
- Relational and NoSQL database systems such as MySQL, Mongo, etc.
- Writing clean, high-quality, high-performance, maintainable code.
- Ability to work and collaborate effectively in a team environment as well as independently.
- Keen interest in learning new technologies.
- Strong communication and conversational skills in English.
Optional Qualification:
- Familiarity with CI/CD
- Familiarity with TDD.
- Understanding of HTML/CSS/JavaScript.
- Experience with modern front-end JavaScript libraries (such as ReactJS, Vue, or Angular)
- Experience writing UI applications with C++.
- Experience with CMake and SQLite
- Experience creating micro services.
- Experience with embedded Linux development.
- Industrial protocols.
- Signal processing knowledge.