Unknown Company

Software Design Engineer

redmond, wa • Posted 4 days ago
Onsite Full Time Software Development

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 client/server applications, as well as major enhancements to existing systems.

Key projects:

  • 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
  • Analyze existing complex implementations based on legacy APIs and develop design based on newer APIs
  • Independently read and understand the architecture of complex systems software with a view to modernize it
  • Implement system software and customize it to client requirements
  • Prepare detailed software specifications and test plans
  • Code new programs to client 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
  • Perform post‑implementation validation of software and resolve any bugs found during testing
  • Write clean, maintainable systems‑level code in C and C++
  • Work effectively in a Windows OS development environment (strongly preferred)
  • Independently debug and fix issues in legacy software by adding instrumentation, traces, and using tools such as Windows Debugger

Candidate Requirements

Must haves

  • Solid understanding of Operating Systems, preferably Windows
  • Read and write C/C++ code.
  • Ability to rapidly gain understanding of kernel driver APIs.
  • Insufficient proficiency in reading and writing code is a main disqualifier for all related requisitions.
  • Less than 3 years of relevant work experience is also a disqualifier, as the team cannot spend significant time training new hires.

Best vs. Average

  • Bachelor's degree in a technical field such as computer science, computer engineering, or related field required
  • 5–7 years of 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
  • Strong operating systems knowledge with hands‑on experience writing systems‑level code in C and C++
  • Proficiency with debugging tools and techniques, including Windows Debugger, instrumentation‑based analysis, and WPP/ETW trace collection and analysis

#J-18808-Ljbffr
Back to Job Search