Perform Consulting is constantly striving to provide best-in-class service by introducing a whole new level of engineering talent. To that end, we are seeking hardworking and passionate software engineers at various levels and specializations.
Software Engineer (Full-Stack)
We are looking for a highly motivated software engineer specializing in server-side web development that is also comfortable working with the entire stack (front-end and infrastructure). The ideal candidate will have a passion for building world-class software and a track record of creating highly scalable software systems.
Understanding fundamental design principles behind a scalable, secure, and performant application;
Experience architecting high-load Web applications;
Have built and optimized highly available, scalable, distributed back-end services, with evidence of exceptional ability;
4+ years in high-load web application development using Java, C++, C# or Go, including implementing Application Programming Interfaces (APIs), Object-Oriented Programming and Design (OOP&D), Object Relational Mapping (ORM);
Know your app - seek to understand all aspects, business and technical, of the applications on which you work so that you can be most effective;
Experience with Docker, Kubernetes, and deep understanding of a complex distributed system, such as Kafka, Spark, HBase, ElasticSearch;
Design and develop high quality, scalable and stable web applications and back-end services;
Architect, design, and implement core business logic and provide clear, concise API surface;
Integrate with various lower stack layers for providing deeper functionality;
Work closely with software engineers, product managers, and partner engineering teams to get high-quality products and features through the software project lifecycle;
Follow our high standards for best security practices in all development;
Will be expected to write and unit test all code;
Process bug reports and release fixes;
Participate in code reviews;
Always think innovatively to solve customer problems;
Continually learn and apply relevant software development practices, patterns, tools, and technologies.