A great software developer has a strong technical background and excellent software skills. They are experienced in designing and possess the ability to develop a unified vision for software characteristics and functions.
The goal is to provide building blocks or common flows for the development team that will result in high-quality solutions.
What you will learn and contribute to
As part of our team, you will: Collaborate with various stakeholders (R&D, team members, customers) to optimize solutions and clarify software requirementsCoach and mentor team members to ensure all employees are comfortable designing and coding in each of the various software modulesUse a proactive approach to common challenges by promoting best practices in design patterns and coding standards while actively seeking ways to improve business software processes and interactionsBased on customer requirements, provide enhancements and feedback to R&D and work with customers (internal/remotely/onsite) during requirements gathering and project deploymentsCreate high-level product specifications and design documents and present regular progress reports while setting goals for yourself and the team
Your skills and experience
You have:BSc in Software Engineering, Computer Engineering, Computer ScienceKnowledge of Network Management & API concepts and protocols such as NETCONF, YANG, OpenFlow, SNMP, REST, XMPP, JMS, Good Knowledge of IP Networking, Routing, Services Topology: IPv4 and IPv6, BGP, LDP, ISIS, OSPF, MPLS, VPLS, VPRN, IP VPN, QoS, Security Proficiency in at least two software languages: Java, JavaScript, Python, Perl, C++Experience working on large-scale software projectsKnowledge of Software Defined Networking & Network Function Virtualization concepts
It would be nice if you also had:Knowledge of software development life cycle in an agile, waterfall, or DevOps environmentExperience with Java (OOP) Object Oriented Programming and Linux based Operating SystemsKnowledge of and/or hands-on experience with virtualization, cloud providers, and containers technologies (e.g., VMWare/KVM/Kubernetes), database systems, and hands-on experience with SQL (e.g., Oracle, MySQL)