Software Development Engineer
Skills Preferred
Job Description
Proficiently design software components by interpreting product specifications, deconstructing projects into manageable tasks, and delivering precise project estimates. Innovatively generate multiple solutions and create flexible low-level designs. Craft code that is modular, scalable, readable, and efficient, while selecting appropriate data structures and technology stacks. Collaborate on high-level design with guidance, and nurture junior team members through mentoring and coaching. Foster teamwork by actively contributing to a shared vision and collaborating closely with cross-functional partners.
β
Responsibilities
Design components by translating product requirements, breaking down projects into tasks and providing accurate estimates. Independently come up with different solutions and extensible Low-level design. Write modular, extensible, readable and performant code. Choose the right Data Structures, tools and tech stacks and be able to do High-Level design with guidance. Build, develop, mentor and coach junior team members. Collaborate with teams by contributing to the shared vision and working closely with cross-functional stakeholders.
Job Requirements
B.Tech or M.Tech or equivalent with 1-3 years of experience. Build abstractions and contracts with separation of concerns for a larger scope. Extensive programming experience in any one programming language like Java. Strong object-oriented programming skills. Experience with multi-threading and concurrency programming. Ability to work with complex business flows and deal with huge amounts of data. Prior work experience in an agile environment or continuous integration and continuous delivery (CI or CD). Experience in building robust and scalable web applications is good to have.