Our Company is seeking a talented Senior Software Developer to join our team. This role requires a highly motivated and skilled engineer with a passion for building great software.
We are looking for someone who can help us design and build cross-platform libraries and tools to communicate directly with client machines through USB and Bluetooth interfaces.
The ideal candidate will have a strong background in C, C++, and experience with development of communications protocols, unit and integration testing, and continuous integration and delivery.
The role also involves working collaboratively with fellow department members, product managers, firmware engineers, test engineers, and designers to develop high-quality applications.
Key Responsibilities:
* Developing new features and enhancing existing ones
* Applying software engineering design patterns to develop well-structured, modular, performant application code
* Performing code reviews, writing unit and integration tests, and contributing to architectural planning and refactoring
* Ensuring best coding practices
* Training, mentorship, and development of junior team members
Requirements:
* B.S. or M.S. in Computer Science, Software Engineering or comparable field with 5+ years relevant experience
* Strong knowledge of and experience with SDLC and Scrum/Agile methodologies
* A solid grasp of fundamental algorithms, data structures, and design patterns
* High critical thinking skills to evaluate alternatives and present solutions that are consistent with business objectives and strategy
* Ability to communicate effectively, both written and verbal, with technical and non-technical multifunctional teams
Preferred Skills:
* Android/iOS experience
* Experience with Swift, Kotlin, Java, Package Management