About the job Software Engineer/Full Stack
Exp 4+ years
The Senior Software Engineer in the Internet Services Engineering team is responsible for the development, maintenance, enhancement and support of key Optus Broadband Internet platforms and services. These platforms and services are focused on various ISP and Mobile related technologies and protocols with an intensive use of the various Open Source tools & technologies, applications, frameworks, Ansible, and Perl & Python scripting language in a Linux environment.
Key output for this role include:
· Successfully design high performance mobile and fixed Broadband applications to support millions of customers
· Successfully design interface contracts, API and related documents to meet internal IT/Network and external vendor systems
· Successfully develop and deploy software in test and production environments
· Satisfactory code testing and reporting of testing
· Project and system documentation
· Satisfactory communication and liaison with peers within and other teams
· Satisfactory communication and liaison with management.
Key accountabilities for this job role and requirements a job applicant must be able to satisfy include:
· Accountable for key services and products, including for: Consumer, Small Business, Fixed Internet, Wireless Broadband, Wholesale Internet and Optus IT. Such diverse services Broadband (NBN, Cable, DSL) Product usage collection, Customer Care applications and diagnostic tools and applications.
· Development, support and maintenance for systems that serve the needs of: other Network Engineering Groups, Optus Customer Care, Optus IT, Content and Portals, Sales and Marketing.
· Accountable for the architecture of the OptusNet service infrastructure, including design, maintenance, policies and standards.
· Adherence to regulatory requirements and provide prompt service to law enforcement agencies.
· Conduct Version Control, system conformance, release and deployment
· Undertake Software Framework Adoption including prototyping activities (e.g. Development of Proof of concepts across Staging, ETL, Modelling and Reporting)
· Maintain and improve the security of the OptusNet service infrastructure.
· Review and manage the impact of changing requirements across concurrent programmes (including managing data integrity, migrations and data quality).
· Improve infrastructure performance and operational efficiency.
· Maintain key internal systems and services to keep ISE as a team functioning. E.g. Version Control, System conformance, release and deployment.
· Accountable for compliance with legislation and all Optus OHS policies/procedures and instructions, reporting any hazards or safety issues to your manager, and performing all tasks in a manner which guards against risk to self and others within the workplace.
· Accountable for compliance with Trade Practices and Information Management Policies and completing all necessary training.
· Foster cooperation and attend meetings scheduled within the team and between other teams
Qualification including:
Tertiary qualifications or similar in relevant discipline.
Required experience, understanding or credentials in:
· Track record successfully developing and deploying software in test and production environments
· Experience being the accountable person for the development, support and maintenance for systems to serve the needs of others within an enterprise
· Extended prior experience (approx. 5 years) in project and system documentation, in particular in an agile context
· Proficient in the Perl and Python Scripting language in a Linux environment. The Internet Services Engineering Team relies on Perl as its primary scripting language. There is a diverse range of tasks and projects with a Perl component
· Proficient in a range of open source systems and software including Red Hat Linux, Centos,
· Knowledge of IP and Internet Protocols as required for the platforms our team is responsible for and other Network and IT platforms our systems interact with
· Knowledge of a conventional software development lifecycle, development, test and deployment (e.g. Waterfall, Agile, SCRUM)
· Have both System Administration and Software development skills
· Proven experience working in project teams
· Flexible and committed to delivering in a timely and quality manner
· Demonstrated documentation skills
· Degree in computer science or equivalent
· Software development in a large and complex Technology environment 5+ years
· Clear written and spoken English
· Experience with Catalyst, modperl and Apache, GraphQL,
· Extensive experience with CVS, GIT, Koji, Puppet, Ansible, Kafka or similar source code control system
· System administration experience in a Unix environment especially RedHat Linux
· Database Experience; SQL, MySQL and/or Postgres
· Required to work as an individual or as a part of a team
· Displays a disciplined but flexible approach to problem solving
Desired experience, understanding or credentials in:
· IP, Mobile and ISP Related Systems and Technologies
· DNS, DHCP, RADIUS, TACACS, NTP, SYSLOG (Key ISP systems)
· LDAP, LVS
· Mail sendmail, POP, SMTP. IMAP
· Grafana, Kafka, Elastic Search, OpenTSB, Victoria Metrics etc
· Knowledge of EAP-AKA, SCTP and Diameter Protocol, and GSMA profile life cycle.
· BNG, BRASs, HLR, AAA
· Routers e.g. Cisco, Huawei, Nokia Equipment
· NBN related technologies with understanding of Layer 1, 2, 3, 7
· SOAP, RESTful
· Knowledge of Test-Driven Development (esp. automated unit testing)
· PostGgress, MySQL, MongoDB databases
· High Performance Content Delivery Network over STB, OTT devices