Senior Software Engineer - New Ventures Technology, New Ventures
5 - 7 years experience • Professional, Scientific & Technical Services
- Bachelor's degree in Computer Science or equivalent area
- 6+ years of experience in Software Engineering
- Experience with building B2B and consumer quality products, enabling business capability and objectives through technology
- Hands-on skills working with SQL and No-SQL databases
- Broad experience across the following application development technologies and in-depth skills with at least one: NodeJS, React, Go, .Net, or Java
- Experience with cloud infrastructure such as AWS, Azure or Google
- Experience in container technologies like Docker / Kubernetes a plus
- Experience in engineering practices such as code refactoring, design patterns, design driven development, continuous integration, building highly scalable applications, application security
- Knowledge of Agile software development process
- Strong analytical and problem solving skills paired with the ability to develop creative and efficient solutions
- Comfortable with ambiguity and rapid changes common in early-stage product development
- Distinct customer focus and quality mindset
- Able to manage own professional development and contribute to functional knowledge building
- Strong command of English language (both verbal and written)
Who You'll Work With
You’ll work with our New Ventures Technology team in either New York or Chicago. You will work closely with Product Management, Product Design and Project Management matrix team members.
The New Ventures Technology team supports our solutions in developing their technology applications and building out a common platform to accelerate each solution with reusable core components across infrastructure, platform, services and front-end technologies. As a Senior Software engineer, you will be leading an in-house development team.
McKinsey New Ventures fosters innovation driven by analytics, design thinking, mobile and social by developing new products/services and integrating them into our client work. It is helping to shift our model toward asset based consulting and is a foundation for and expands our investment in our entrepreneurial culture. Through innovative software as a service solution, strategic acquisitions, and a vibrant ecosystem of alliances, we are redefining what it means to work with McKinsey.
As one of the fastest-growing parts of our firm, New Ventures has more than 1,500 dedicated professionals (including more than 800 analysts and data scientists) and we’re hiring more mathematicians, data scientists, designers, software engineers, product managers, client development managers and general managers.
What You'll Do
You will help deliver software products with high levels of value, usability, quality and predictability for our New Ventures solutions.
You will develop new products to take to our clients, leveraging cloud technologies, and microservices architecture patterns. You will be an active learner, identifying new open source libraries. You will use unfamiliar technologies and learn new programming languages to meet technical requirements. You will have a strong understanding of key agile engineering practices to guide teams and contribute to growing and improving our engineering practices.
You will produce high quality code for the full technological stack, from database to UI and everything in between. Additionally, you will assist with troubleshooting issues and improving application performance by responding to specific problem and fixing defects and you'll document and demonstrate solutions with a focus on security and performance by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code. Furthermore, you'll actively participate in SCRUM and Agile software process.
Additionally, you'll leverage your technical skills by applying them towards the validation of product quality and writing test code, including unit tests and automated test cases. You will keep up with industry trends and innovations and apply knowledge to the existing codebase.
You'll be expected to identify and escalate technical barriers, dependencies or risks and you'll need to understand the value of the user story and how to best deliver the appropriate functionality. You will manage yourself day to day with regards to priorities, time and commitments within your team setting while ensuring that technical standards and best practices are exercised, while maintaining a distinct value and quality mindset.