McKinsey’s Solution Development group builds web sites, data analytics, reporting and other IT applications that support our global network of management consultants. Our goal is to provide McKinsey’s business thought leaders the tools and knowledge they need as they work with clients around the globe.
The Software (Senior) Technical Lead has a real passion for software development with an agile mind-set. A qualified candidate will have extensive experience with frameworks like Struts, Spring, Hibernate and most of the Java J2ee stack technologies. S/he would have contributed to open source projects, have participated in technical communities, interest groups or have written or spoken in public about their technical ideas.
Despite having over ~10 years of experience, a Software (Senior) Technical Lead at McKinsey will still be an active learner: tinkering with new open source libraries, using unfamiliar technologies without a lot of supervision and learning new programming languages in their spare time, etc.
The Technical Lead would have an excellent knowledge and experience with developing application for Web and Mobile devices (iOS and Android). Set direction; define design and architecture for Portlet development; coach and guide development teams to build capability for Java/J2EE. S/he should be passionate about good engineering practices such as Test Driven Development, simple code, automated testing and deployments, continuous integration, etc. At the same time, a successful candidate will not only be a good learner, but a good teacher. S/he should inspire their peers and more junior team members to learn and expand their skill set, guiding them in the right direction.
Finally, a Software Technical Lead at McKinsey will have good communication skills and be able to explain complex technical issues in plain English to a variety of stakeholders in the larger organization.
- Bachelor's degree in Computer Science or equivalent subject
- Minimum of 10 years’ experience in software development
- Minimum of 8 years’ experience with Java and J2EE technology stack
- Strong command of English language (both verbal and written)
Technical skills and experience:
- Hands-on experiences of Java and J2ee frameworks.
- Expert on one or more of these frameworks i.e., Spring, Struts, JSF
- Operational knowledge of multiple application and web servers like Tomcat, WebSphere, WebLogic, Glassfish, etc.
- Deep understanding of the mathematical underpinnings of information retrieval
- Strong experience on multiple Java/J2ee frameworks like Spring, Struts, Hibernate
- Proficient with the use of RESTful services
- Advanced understanding of algorithms, data structures, performance optimization strategies and best practices
- Proficient in object oriented design principles and automated testing strategies for web applications
- Knowledge of agile software development process
- Experiences of code refactoring, design patterns, design driven development, continuous integration, building highly scalable applications, application security
- Experience in Portal Technologies (IBM Websphere Portal, Liferay, etc.) would be an added advantage
- Ability to lead distributed development teams
- Ability to be an early thought partner with business sponsors to assess the technical feasibility of developing solutions around a conceptual idea
- Ability to work with multiple teams to provide technical guidance and oversight
- Strong analytical and problem solving skills paired with the ability to develop creative and efficient solutions
- Distinct customer focus and quality mindset
- Excellent interpersonal, leadership and communication skills
- Excellent relationship building skills
- Ability to work under pressure with a solid sense for setting priorities
- Comfortable working in a team based and collaborative environment
- Coach and mentor team members to follow good engineering