Position: Senior C makefile Build Engineer
Company: Luxoft
Category: DevOps
Experience required: 3y
English level: intermediate

The solution targets Data Centers of large organizations, including private/hybrid/public cloud environments.
It is addressing the needs of users requiring an easier option than switch-by-switch, CLI-based approaches for equipment management and can automate time-consuming tasks such as the configuration of L2-L3 network devices.

We are looking for a Software Developer / Build Engineer with strong experience in C/C++ and Makefiles to join our team.
One of the projects currently ongoing is merging the codebases used by 2 different lines of products (L2-L3 devices).
As part of the team, this engineer will be responsible for implementing a fully automated build process.
Responsibilities:
- Re-architecture the Makefile infrastructure of 2 lines of products that share the same source code in order to implement a single automated build process
- Restructure the Makefile infrastructure to support a larger code base and cross-compilation
- Implement a highly readable/highly parallel build system to get faster turn around time for builds
- Reduce the complexity of existing Makefile infrastructure
- Work with engineers to be able to understand the implication of changes to existing Makefile infrastructure and roll out in a safe manner

Mandatory Skills Description:
Technical skills required:
- Experience in C/C++
- Strong experience in C/C++ build tools & complex architectures - specifically systems based on Makefiles
- Good experience using cross compilers

Soft skills required:
- Very good written and spoken English
- Work effectively in a distributed team
- Problem-solving attitude, ability to analyze business requirements and propose fixes
- Willing to learn and deliver using a wide range of technologies
- Good communication skills and team player

Nice-to-Have Skills:
- Experience working on Makefile infrastructure for large C/C++ projects (over 5mil lines of code)
- Experience working with non-recursive Make systems
- Experience in using object cache methods, ccache
- Networking