We are currently seeking a motivated and self-driven Principal Software Engineer to join our dynamic team of professionals.
As a Principal Engineer, you will play a key role in analyzing and resolving various business challenges within the technology realm. Your responsibilities will include designing, implementing, conducting unit tests, and documenting software systems on a daily basis.
If you are intrigued by this opportunity, we warmly invite you to become a part of our team!
CUSTOMER
Our client is a UK-based company whose mission is to create a better internet. We build an analytics platform that connects marketers to publishers to ensure further investment in great content creators while allowing both parties to grow efficiencies in their business.
PROJECT
Along with the customer, we are building the next generation of artificial intelligence technology to help keep the web running. We are all used to a free internet with a diverse set of services and content, but without a sustainable way to monetize the work of creators, we will be left with only a few portals run by large corporations.
There are a lot of reasons to join our project. Here are just a few of them:
- AWS infrastructure
- ML
- Big Data
- Active development stage
- Working closely with the CTO – ability to make a great impact on a project
REQUIREMENTS
- 5+ years of software engineering experience
- Excellent knowledge of JavaScript, TypeScript
- Solid experience with VueJS, Node.js, and the related ecosystem
- Strong knowledge of algorithms and data structures
- Experience with designing, implementing, and shipping rich web applications
- Expertise in documentation and Software Development Lifecycle and ALM Tools
- Strong estimation skills, ability to come up with solutions, pros/cons
- Strong knowledge of functional programming concepts and other programming paradigms
- Openness to working and collaborating in a multidisciplinary team
WOULD BE A PLUS
- Working experience with Python
- Experience with AWS
RESPONSIBILITIES
- Implement portions of software following given classes/components design and using your primary tech stack
- Ensure quality, maintainability, and conformance of software to best practices
- Produce clean code
- Participate in requirements clarification sessions, collect inputs and requirements of assigned tasks
- Proactively review own code with peers to ensure its quality
- Participate in estimation and planning sessions
- Play supervisory, advisory, and coaching roles for one or several Juniors specialists, ensuring their assigned tasks delivery thanks to guidance and peer reviews provided
- Develop technical project documentation and user documentation
- Participate in project and team meetings, provide relevant contributions and information
- Participate in technical interviews of software developer specialists and assess candidates’ capabilities against job requirements