Major Ongoing Responsibilities
• Implements new software functionality and enhancement requests and maintains existing software products.
• Actively participates in software architecture activities.
• Troubleshoots and fixes software defects.
• Reviews software development deliverables.
• Holds and participates in software inspections.
• Develops and executes unit and integration test cases.
• Participates in quality and process improvement initiatives.
• Leverages and practices software development industry best practices.
• Contributes to the issuance of patents for inventions.
• Maintains software deliverables and changes within the change management system.
Experience & Training
• Bachelor’s degree in computer sciences, computer engineering, electrical engineering or related field.
• Minimum 6 years experience in software development.
• Expert knowledge of the Windows .Net framework and the C# programming language.
• Experience developing software on Windows mobile devices such as PDAs and tablet PCs.
• Experience in formal software development methodologies. Familiarity with modern development life cycle models.
• Experience in object oriented analysis, design and implementation.
• Knowledge of software design patterns and standard modeling languages such as UML.
• Experience developing software that includes relational databases, networking, communication protocols, and advanced graphical user interfaces.
• Expertise with multi-threaded concurrency issues, failure mode analysis, and performance optimization.
• Expertise with automated testing, debuggers, and emulators.
Qualified candidates may apply online via our website at http://www.sjm.com/ and reference position # ANS1248. No agencies or phone calls, please.