Software Engineer II Job Description

Software Engineer II designs and develops software applications. Performs coding, debugging, testing and troubleshooting throughout the application development process. Being a Software Engineer II requires a bachelor’s degree. Typically reports to a manager. The Software Engineer II gains exposure to some of the complex tasks within the job function. Occasionally directed in several aspects of the work. To be a Software Engineer II typically requires 2 to 4 years of related experience.

Software Engineer II Job Description Template

Our company is looking for a Software Engineer II to join our team.

Responsibilities:

  • Monitoring and support of modern services based on the Azure platform;
  • Support post-deployment fallouts on projects worked on and released to production;
  • Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions;
  • Cross-team collaboration in driving the end to end delivery of SDN on Edge;
  • Participating in the code reviews and design discussions of other engineers;
  • Have a strong sense of end to end ownership;
  • Adhere to key principles: Code and design for best performance, scalability and resiliency;
  • Participate in daily SCRUM meetings;
  • Participates in the testing process through test review and analysis, test witnessing and certification of software;
  • Develop end user applications with .NET (C#, WPF, Xamarin) and Javascript (Angular);
  • Be a self-starter, capable of solving ambiguous and challenging technical problems with wide scope;
  • Deliver trustworthy solutions for engineers allowing them to focus on experimentation, evolution, and delivery of high-quality features;
  • Collaborate cross-functionally with data scientists, business users, project managers and other engineers to achieve elegant solutions;
  • Full stack development of new features/tools including design, documentation, implementation, and testing;
  • Work alongside other engineers on the team to elevate technology and consistently apply best practices.

Requirements:

  • Unity, Unreal or related game engines;
  • BS Degree in Computer Science, Electrical & Computer Engineering or Mathematics or equivalent experience;
  • Understand data structure concepts such as linked lists, dictionaries, arrays, custom object creation, etc;
  • 3+ years of product lifecycle experience (from customer requirements -> functional spec -> design -> development/testing -> deployment and monitoring);
  • Large scale systems design and programming in an academic or commercial setting;
  • Strong interpersonal and communication skills;
  • 2+ years of experience building scalable, maintainable, production-quality services at cloud-scale with Azure or equivalent cloud platform;
  • Use tools and methodologies to create representations of workflows, user interfaces, data schemas, etc;
  • Solid understanding of software design and development;
  • Experience with third-party libraries and APIs;
  • Experience building AI/ML solutions to real problems;
  • 3+ ye ars of professional experience in software Engineering;
  • Ability to solve problems that span multiple interconnected systems;
  • Prior experience with Platform Security and Identity, Authentication Protocols, Biometrics, Credential lifecycle management, PKI and Crypto;
  • Excellent design and problem solving skills.