About The Role
The Software Developer is responsible for designing and writing code and providing support to web applications. The SD is able to work independently, assuming ownership for the design, interface and programming of simple and complex web applications. The Developer should also be able to provide estimates for tasks and assume ownership for these estimates. The Developer works with web applications and a variety of back-end technologies including Java.
- Work closely with Creative, Business, Technology to ensure the technology will be functional and meet performance targets
- Own the development of sub-systems and ensure they follow the established technical architecture and design
- Implement user and business requirements which are composed of multiple development activities or touch various sub-systems
- Maintain concise and clear documentation on projects as dictated by each capability’s guidelines and best practices
- Debug complex issues in existing software applications
- Provide proactive feedback on policies and procedures when an opportunity for improvement exists
- BS in Computer Science or related discipline, or equivalent practical experience
- Between 2 - 6 years’ software development experience
- Proficiency designing and developing rich web applications using various technologies such as JavaScript, Java, JavaScript, ReactJs, Node.js, PHP, CSS.
- Knolegable designing and developing backend services using various technologies such as Spring , GRPC, Java EE.
- Work experience with automation and pre-processing tools (e.g. Grunt, Gradle, Maven, Ant, Powershell)
- Work experience with data storage patterns and practices, namely relational (SQL) and/or non-relational (NoSQL, MongoDB) platforms
- Work experience integrating web solutions with external web services
- English level B1 or higher
- Advanced-level knowledge of at least one front-end programming language (e.g. PHP, React.js) and object-oriented analysis and design
- Knowledge of design patterns (e.g. model-view-controller, observer, etc.) and software engineering principles
- Fluency with data transfer formats and protocols popular in web applications (e.g. JSON, XML, HTTP)
- Capable of working with new technologies and building proof of concept prototypes.
- Capable of troubleshooting, debugging and doing root cause analysis of web platform issues
- Capable of creating and consuming SOAP or REST web services
- Capable of writing unit tests, and scripting load and performance tests
- Has performed code reviews and/or provided mentorship to other team members
- Has handled the most complex modules of a web application
- Has shown the ability to learn and work independently with new technologies
- Has created a technology workshop and presented it to peers