Job description
As a full-stack developer at MediaSense you will work across the business to design, develop, deliver, and maintain existing and new software (and other technical/data) projects for MediaSense customers - both internal and external users.
Working as part of the Tech and Data Team and reporting into the Head of Engineering & DevOps. You will be inquiring, curious, adept at understanding complex problems but possess the ability to explain complexity in simple language to engage and influence others. Having defined problems, you will be practical and proactive in defining opportunities and isolating solutions which you then go on to develop, deploy and maintain.
You will seek out new ways to standardise and automate business process and in doing so you will help the business to become more secure, more scalable, and more efficient.
You will work closely on the business’s innovation initiatives, for both existing and new products, and services.
You will be an ambassador for the engineering team, and you will help the business to develop a deeper understanding of how engineering can support and add value. You will be output, and outcome focused, with careful attention to code quality, DevOps process and continual improvement. You will contribute to engineering projects which deliver demonstrable value to stakeholders.
Responsibilities
- Front and backend software development and engineering to the standards required and clearly communicated to you from the Head of Engineering
- Work in line with the DevOps process as detailed by business.
- Focus on code quality, simplicity, clarity, documentation of code and clearly always aiming to improve the code you write, as well as contributing to the development others coding and code skills/style across the business as required.
- Deliver key projects and objectives annually as agreed with your line manager, and other adhoc projects which may be required as the needs and wants of the business changes.
- Staying responsive and dynamic to the needs and wants of the business, its customer and stake holders, delivering the right software solutions as identified working in carefully and considered partnership with others.
- A customer focused mind set to software development, not just head down, thinking about what you are creating, and challenging any assumptions which you see, clarifying anything which you believe is unclear.
- Continue to develop your skills in JavaScript and, when appropriate, use TypeScript or other appropriate languages instead.
- Work with front end technologies such as VueJS / Svelte / React / CSS/ Sass.
- Keep up to date with software development and engineering best practices so you can maintain a modern skillset and contribute to technology selection decisions.
- Add and maintain tests to ensure code quality, when appropriate.
- Build relationships with the tech team and the wider business.
- Produce appropriate levels of documentation to support the code and project setup, this may be written but when appropriate includes technologies such as Swagger/OpenAPI, Dockerfiles or Terraform (self-describing documentation).
- Be aware of and ask for support around software development, information, and data security, do not make unilateral decisions about software security, if in doubt work with those around you to support in keeping our IP and code bases as free from security issues as possible.