- Anywhere
Responsibilities:
-
Drive discussions to create/improve the product, process, and technology
-
Build abstractions and contracts with separation of concerns for a larger scope
-
Rapid prototyping
-
Robust and scalable web-based applications
-
Do high-level design with guidance; Functional modeling, break-down of a module
-
Thinking platforms & reuse, the open-source contribution will be a plus
-
Do incremental changes to architecture: impact analysis of the same
Key qualities
- Worked on projects in multiple teams, products and systems at the same time
- The complexity of systems and products involved in their work should have been to support a director of engineering in execution.
- Should have had experience working on scaling the design of one or two existing products for increased functional complexity.
- Should have had experience working on scaling one or two existing products for non-functional requirements.
- Should be language agnostic, with extensive and expert programming experience in Java programming language (strong OO skills preferred).
- A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design.
- Have a penchant for solving complex and interesting problems
- BE/BTech, MTech in Computer Science or related technical discipline (or equivalent).
- Excellent coding skills – should be able to convert a design into code fluently
- Good skills to write unit & integration tests with reasonable coverage of code & interfaces – TDD is a plus
- Experience in building highly scalable business applications, which involve implementing large complex business flows and dealing with a huge amount of data.
- Experience with multi-threading and concurrency programming
- Ability to switch between the technologies and learn new skills on the go.
- 5+ yrs of exposure in the art of writing code and solving problems on large scale