Job Title: Software Engineer (Web Developer)
Job Reference: BBC/TP/653414/51628
Location: Lagos Hub
Job family: Technical Systems & Delivery
Grade: Local terms and conditions
Department: (Africa) Hub
Reports to: Senior Broadcast Journalist Digital, (Nairobi) Hub
Contract Type: Fixed term
Business Unit: News – W2020 Africa
Job Category: Technology, Systems & Delivery
- Responsible for implementing effective software and tools for given designs.
Key Responsibilities and Accountabilities
- Develop effective software that meets given specifications
- Write appropriate tests using automated test-driven techniques for ensure code quality
- Integrate the software with monitoring and support tools
- Support system integration in its operating environment
- Write and review technical documentation
- Help to troubleshoot and resolve issues throughout the product life cycle
- Participate in the team’s agile planning and delivery process
- Effectively participate in the teams software development methodologies, such as pairing, code and documentation reviewing and continuous delivery
- Learn new technologies and keep abreast of existing technologies.
Knowledge, Skills, Training and Experience
- Demonstrable experience writing and maintaining robust production software
- Competence in one or more mainstream development languages and frameworks
- Competence with one or more mainstream development and deployment tool chains (IDE, SCCS, CI)
- Experience of database design and use in software applications
- Knowledge of the web architecture and key technologies (HTTP, DNS, distributed design)
- Competence test driven development
- Competence in developing for operational concerns (monitoring integration, performance testing, security considerations)
- Experience of project working and professional software development processes, including agile.
- Worked in an enterprise environment on several projects (including experience in testing, design and release)
- Experience of releasing their software to a production use case
- Participated in reviews and inspections of code (sat with a peer or someone more senior reviewing your code)
- Software Engineering or Computer Science Degree or equivalent.
- Reports to Principal Software Engineer or Software Engineering Manager
- Tasks are allocated to the job holder by the team lead
- Undertakes tasks independently
- Independently writes tests to check quality of code
- Assesses feedback from reviews and incorporates as appropriate
- Troubleshoots independently or with the support of others where necessary
- Contributes to the teams iterative and collaborative design and implementation decisions.
- Finance: No financial responsibility
- Line Management: No line management responsibility
- Ad-hoc Teams: Participates in departmental hack days and external ad-hoc events (typically 5 to 20 members)
Additional Job-specific Responsibilities and Accountabilities
- Work collaboratively in a multidisciplinary team and to proactively shepherd new features to live.
- To write server side code (mainly NodeJS, experience of Ruby/PHP desired)
- To work to current good software development practices.
- To write unit and integration tests using automated test frameworks.
- To work well in a team context according to the team’s shared practices.
- Excellent front-end web development skills:
- HTML. Semantic markup patterns for flexible reuse and accessibility.
- CSS. Good understanding of modern techniques such as Responsive Web Design, recent CSS advances such as flexbox but also supporting legacy browsers.
- BUILDING ROBUST EXPERIENCES. Using progressive enhancement and mobile first approaches to create experiences that work everywhere and for everyone.
- Accessibility – support all browsers with core content, ensure compliance with screen readers, in accordance with WAI standards, etc
- Great understanding of UX concerns. We want smart devs who can provide valuable feedback to designers to improve wireframes and designs.
- Ability to create production ready code with tests in one of: PHP, Ruby, Python or NodeJS (training will be provided if you don’t know PHP or NodeJS).
- Understanding of Service Oriented Architectures and consuming RESTful web services via HTTP.
- Experience of working in an agile or collaborative way.
- Familiarity in using GitHub workflows
- A level of familiarity with AWS or similar Cloud Infrastructure and associated tooling.
A Big Plus Would Be:
- An enthusiasm for News.
- Healthy interest in emerging platform level technologies – queues, microservices, caches etc.
- Understanding of CI, experience with using a CI system (Hudson, Jenkins).
- Knowledge of strategies to improve performance (HTTP caching, language best practices).
Application Closing Date
24th January, 2021.
How to Apply
Interested and qualified candidates should:
Click here to apply online
Note: There may be sub-sets of the generic job described above which require additional technical skills. This appendix to the generic job description can be developed to cover such situations.