Applications Dev & Test - Software Design Engineer 1
• Candidate Location Requirements: Fully remote ok, sponsor’s preference is candidates in Redmond
• If hybrid, # of days contractor will be required to work onsite: If located in Redmond, sponsor would like them to be hybrid; in office 3 day a week
Compelling Story & Candidate Value Proposition
• What makes this role interesting? - This role provides the opportunity to engage with the latest technology in the Surface organization, focusing on platform validation and tool development for cutting-edge devices. The role provides a collaborative environment with access to advanced labs and resources
Candidate Requirements
• Years of Experience Required: 2 overall years of experience in the field.
• Degrees or certifications required: No degree is required to be eligible for this role.
• Disqualifiers: Candidates with lack of experience with C# and Python, or if they have not worked on tool development projects will not be eligible for the role.
• Best vs. Average: The ideal resume would contain experience in tool development projects, and demonstrated experience with working on projects in test tooling and reporting mechanisms
• Performance Indicators: Performance will be assessed based on quality of work and meeting deadlines.
Top 3 Hard Skills Required + Years of Experience
1. Minimum 2 years experience with C#
2. Minimum 2 years experience with Python
3. Minimum 2 years experience with tool development
Hard Skills Assessments
• Expected Dates that Hard Skills Assessments will be scheduled: ASAP
• Hard Skills Assessment Process: The assessment process will include one round for 45-60minutes each.
• Required Candidate Preparation: Candidates should have prepared for programming questions prior to the assessment.
Summary:
The main function of a Software Engineer is to design, develop, implement, test, and maintain business and computer applications software or specialized utility programs including mainframe and client/server applications, and major enhancement of existing systems
Job Responsibilities:
• Fine-tune and improve a variety of sophisticated software implementation projects
• Gather and analyze system requirements, document specifications, and develop software solutions to meet client needs and data
• Analyze and review enhancement requests and specifications
• Implement system software and customize to client requirements
• Prepare the detailed software specifications and test plans
• Code new programs to client’s specifications and create test data for testing
• Modify existing programs to new standards and conduct unit testing of developed programs
• Create migration packages for system testing, user testing, and implementation
• Provide quality assurance reviews
• Perform post-implementation validation of software and resolve any bugs found during testing
Qualifications:
• Bachelor's degree in a technical field such as computer science, computer engineering or related field required
• 0-2 years experience required
• A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design
• large systems software design and development experience
• Experience performing in-depth troubleshooting and unit testing with both new and legacy production systems
• experience in programming and experience with problem diagnosis and resolution