Key Duties and Responsibilities
- Performs moderately complex development activities, including the design, implementation, maintenance, testing and documentation of software modules and sub-systems
- Understands and employs best practices
- Performs moderately complex bug verification, release testing and beta support for assigned products. Researches problems discovered by QA or product support and develops solutions
- Understands the marketing requirements for a product, including target environment, performance criteria and competitive issues
- Works under the general supervision of a development manager
Minimum Education/Certification Requirements and Experience
- BS in Computer Science, Applied Mathematics, Engineering, or other natural science disciplines with 2 years’ experience or MS
- Working experience within technical software development proven by academic, research, or industry projects. Good understanding and skills in object-oriented programming
- .Net experience is a must
- Role can be remote, must be based on the East Coast due to timezone
Preferred Qualifications and Skills
- Good communication and interpersonal skills
- Experience with C++, Python, Java, and C# / .NET
- Ability to assist more junior developers on an as-needed basis
- Ability to learn quickly and to collaborate with others in a geographically distributed team
- Know-how on cloud computing technologies like micro-service architectures, RPC frameworks, (e.g., gRPC)
- Experience with modern database technologies such as MongoDB
- Working knowledge of distributed application frameworks such as MassTransit is desired
- Technical knowledge and experience with various engineering tools and methodologies, such as Finite Element simulation, CAD modeling, and Systems Architecture modelling is a plus