C++ Engineer
We are looking for an experienced C++ Engineer to join our expanding team. In this role you will work with some of the newest technologies available in a relaxed agile environment within a cross functional team. This role will be based in our Cork office and will require some travel to Vancouver.
What will I be doing?
- Designing and implementing C++ applications
- Taking products from conception to production
- Designing, developing and delivering software to improve the availability, scalability, latency, performance and efficiency of our systems.
- Solving problems affecting mission critical production systems and implement improvements to prevent problem recurrence.
- Improving instrumentation and monitoring of all production systems.
- Influencing designs, architectures and standards for highly available, distributed systems.
- Engaging in capacity planning, performance analysis and system tuning.
- Contributing towards the evolution of our engineering and agile culture.
- Mentoring and improving the software and system skills of other engineers.
- Supporting QA, Operations and other departments as needed.
- Supporting the team in whatever capacity necessary to achieve the sprint goal.
- You may be asked in future to join the on-call rota to assist with production issues.
What are we looking for?
- BSc. degree in Computer Science or related technical field, or equivalent practical experience.
- 5+ years C++ development experience with a thorough knowledge of the standard library and algorithms
- Experience in highly transactional multi-user systems
- Strong understanding of memory management in non garbage collected environments
- Experience of IPC, synchronization, polymorphism and templating in C++
- Strong systems analysis skills. Transform requirements using structured techniques to create functional / technical specs
- Experience of working within a scrum agile development framework
- Excellent interpersonal and communication skills
- Excellent mentorship skills
- Systematic problem solving approach, with a strong sense of ownership.
- Working knowledge of Linux
Bonus Skills
Desirable experience in some or all of the following technologies; Java, Messaging, Strong OOD and knowledge of design patterns, Docker, Tomcat, SQL, Cassandra, Oracle, RabbitMQ, Spring and RESTful APIs.