The Sr Software Engineer works with a team of other software engineers, network and systems engineers to design, implement, and deploy software which meet customer's requirements, scales easily, removes the limitations of traditional networking solutions, and supports deployment in highly available environments. The Sr Software Engineer actively participates in architecture and design of various software components focused on creating applications that leverage technologies such as virtualization, micro services, SDN, NFV, and Big Data platforms and technologies. They work on technical assignments that are moderately difficult, requiring judgment in resolving issues or in making recommendations. They work on assignments requiring considerable judgment and initiative, understand implications of work and make recommendations for solutions. They normally receive little instruction on daily work, and only require general instructions on newly introduced assignments.