Job Description
Are you someone who always writes scripts to make your development activities faster/easier? Are you someone who wrote plugins for your team to have super powers? Are you someone who fixed or created Opensource libraries and turbo charged your developer community? Are you someone who has patents in new innovations in algorithms? We’re looking for you!
We are looking for creative minds who will develop software applications that make life easier for teams and clients. Responsible for entire development and support process for a software program. Your applications make previously complex tasks simple with the impact ranging from saving time, effort or money to redefining normal. The focus will be to develop AI products that will be used by the entire organization, develop next generation tools that will redefine SDLC.
- Apply in-depth knowledge of multiple programming languages, associated frameworks and the tool ecosystem to create elegant AI applications to solve problems.
- Adopt new languages and new paradigms applying them to the problem domain where they deliver significant benefit.
- Test drive features in applicable programming language and be comfortable with the TDD cycle.
- Write code that is not only functional but is also a work of art, clean, efficient, and maintainable.
- Engage with cross-functional teams to ideate, design, and deliver innovative features and services.
- Stay ahead of the curve by continuously exploring, evaluating, and adopting cutting-edge technologies to enhance development efficiency.
- Shape the wider application landscape leveraging AI.
- Apply distributed programming models (e.g. Actor frameworks) appropriately.
- Model multiple domains, articulating contexts & boundaries and articulate the rationale behind them.
- Be an expert at translating requirements into tasks & code.
- Develop tools that can enable teams to produce high quality code leading to rapid delivery. Ruthlessly pursuing continuous integration and delivery.
- Committing code early and often, with an understanding of version control & branching strategies.
- Implement continuous live testing.
- Implement infrastructure as code.
- Apply understanding of elastic scale and build highly available systems.
- Build manageable code and observe basic hygiene practices.
- Follow the best practices of continuous BDD/ TDD/ Performance/ Security/ Smoke testing.
- Work effectively with my product stakeholders to communicate and translate their needs into improvements in my product.
- Lead group discussions on design within appropriate bounded context
- Support production systems, resolve incidents and perform root cause analysis.
- Debug/find complex problems and support/maintain the software solution.
- Be a recognized contributor/vocal in forums (Eg: Google/MS MVP’s)
- Share knowledge and influence with the wider engineering community.
- Mentor and develop those around me.
- Raise the bar of the organization.
- Produce proof of concepts to evaluate new tools
Qualifications
Essential Criteria:
- A demonstrable history of being a hands-on coder, with a portfolio that showcases your prowess.
- A reputation for writing code and developing applications that have not only earned the respect of your peers but has also left them in awe.
- The caliber of work that could be likened to that of a developer who has contributed to a renowned open-source framework.
- A comprehensive understanding of the software development life cycle, from conception to deployment.
- Exceptional problem-solving skills and a proactive approach to overcoming challenges.
Preferred Skills:
• Experience of building products used by other developers
• Mastery of multiple programming languages and development tools.
• Experience with agile and other progressive development methodologies.
• Excellent communication skills, with an emphasis on collaboration
• A portfolio that highlights a track record of exceptional software development projects.
• Software patents to your credit
If you are an engineer whose code is a testament to your talent, and you are ready to inspire and be inspired, we invite you to apply.
Learning Culture:
Learning is part of our DNA. As an organization, we promote self-learning and the continuous development of yourself and others. We offer plenty of opportunities to build critical core consulting skills and learn new technologies. In addition to that you will be given the chance to support the growth of others as part of your own journey by becoming part of our ever-growing learning ecosystem, in which everyone is both a producer and consumer of learning.
Education:
Bachelor’s/Master’s Degree in Computer Engineering, Computer Science, or a related field