Software Engineer II

Microsoft Microsoft · Big Tech · Czech Republic · Software Engineering

Software Engineer II role focused on implementing advanced Identity and Access Management standards by leveraging emerging AI-forward technologies. The role involves improving AI tools and practices within the SDLC, incorporating Responsible AI, and experimenting with AI tools to enhance capabilities. It also emphasizes building scalable, secure solutions and adhering to modern software engineering practices, including the use of GenAI.

What you'd actually do

  1. Improves artificial intelligence (AI) tools and practices across the software development lifecycle (SDLC). Proactively takes responsibility for the content of their AI-generated requirements, design documents, code, and other assets, assisting other members of the team to do the same. Incorporates Responsible AI practices into the SDLC to ensure appropriate controls over AI-generated assets. Applies SDLC and engineering health measures (e.g., Accelerate, SPACE framework, Engineering System Success Playbook [ESSP]) to guide improvements to processes and practices, especially those involving AI. Experiments with AI tools and practices to improve their own capabilities, and provides recommendations on how to adopt them to other members of the team.
  2. Leads by example across teams and mentors others to produce extensible, maintainable, well-tested, secure, and performant code used across products that adheres to design specifications. Leads efforts to continuously improve code performance, testability, maintainability, effectiveness, and cost, while learning about and accounting for relevant trade-offs. Identifies best practices and coding patterns (e.g., leveraging state-of-the-art generative artificial intelligence [GenAI], approaches to source code organization, naming conventions) and provides deep expertise in the coding and validation strategy. Creates and applies metrics to drive code quality and stability, appropriate coding patterns, and best practices. Identifies and anticipates blockers or unknowns during the development process, escalates them, communicates how they will impact timelines, and then leads efforts to identify and implement strategies and/or opportunities to address them.
  3. Leads efforts on using debugging tools, tests, logs, telemetry, and other methods, and proactively leads verification of assumptions while developing code before issues occur across products in production. Leverages minimal telemetry data, triangulates issues, and resolves with minimal iterations. Leads incident retrospectives to identify root causes of problems, the implementation of repair actions, and the identification of mechanisms to prevent incident recurrence. Proactively applies least-access principles, uses logging, telemetry, and other appropriate mechanisms to investigate issues while retaining privacy and security, and drives those practices across the team.
  4. Reviews product code and test code to ensure it meets team standards, contains the correct test coverage, and is appropriate for the product or solution area. Brings insight to code reviews to help improve code quality, coaching and providing feedback to develop other engineers' skills. Conducts code reviews in a timely fashion that helps accelerate the pace of development on the team. Considers diagnosability, reliability, testability, and maintainability when reviewing code, and understands when code is ready to be shared or delivered. Applies and reviews for coding patterns, security risks, compliance issues, and best practices in code reviews, providing feedback on code to drive adherence to best practices. Uses automated source code analysis tools that are incorporated into the build/development process.
  5. Owns and leads efforts and discussions for the architecture of aspects of complex products/solutions (e.g., design, cost). Leads the testing and exploration of various design options across a set of complex product/solution scenarios, ensuring the strengths and weaknesses of each option are outlined and making recommendations for which design option is best. Creates proposals for architecture and design documents, and leads testing of hypotheses and proposed complex solutions. Shares and acts on findings from investigations, owns design decisions, and oversees the less experienced team members. Leads the development of design documents that support user stories and other product requirements. Evaluates new technologies to solve classes of problems, and determines how to integrate these technologies within existing systems. Leads design discussions with the team and shares findings/learnings from investigations, holding ownership for design decisions. Leads efforts to ensure system architecture and individual designs meet performance, scalability, resiliency, disaster recovery, cost of goods sold (COGS), and other requirements and expectations. Upholds Microsoft standards of security, pri

Skills

Required

  • Software engineering practices
  • SDK and shared component development
  • hyperscale distributed systems
  • system design
  • problem-solving
  • debugging skills
  • security
  • reliability
  • modern software engineering practices
  • Responsible AI practices
  • generative artificial intelligence [GenAI]

Nice to have

  • Identity and Access Management standards

What the JD emphasized

  • AI-forward technologies
  • AI-generated requirements
  • Responsible AI practices
  • Experiments with AI tools
  • state-of-the-art generative artificial intelligence [GenAI]

Other signals

  • improves artificial intelligence (AI) tools and practices across the software development lifecycle (SDLC)
  • Incorporates Responsible AI practices into the SDLC
  • Experiments with AI tools and practices to improve their own capabilities
  • leveraging state-of-the-art generative artificial intelligence [GenAI]