Job Description
As a Senior Software Engineer I, you will be part of a kickass agile development team, building and working on enterprise grade software systems across multiple technologies. You will also provide coaching and mentorship to the junior folks in the team. Responsibilities. Design, develop, and maintain web applications and automation pipelines.
Work with teams to ideate, innovate, and execute new application development. Implement industry standard best practices. Apply latest frontend and backend technologies to build next-generation software applications. Technical Roles.
Quality & Testing. Writing Code:. Consistently writes functions that meets standards, are easily testable, easily understood by other developers, and accounts for edge cases and errors. Understand performance parameters and assess application performance.
Work on core data structures and algorithms and implement them using technology chosen. Testing. Understands the testing pyramid, plans, designs and writes unit tests in accordance with it. Always tests expected edge cases and errors as well as the happy path.
Debugging & Observability. Debugging: Uses a systematic approach to debug issues located within services. Software Design & Architecture. Understanding Code: Understands the domain, can gain sufficient context to work productively in that domain.
Software Architecture: Designs functions that are aligned with the overall service architecture. Security. Security: Understands the importance of security. Utilizes this knowledge to make decisions that may have security implications.
Delivery Roles. Incremental value delivery. Work Breakdown: Before beginning work, ensures that tasks are appropriately sized for continuous integration and incremental delivery with help from teammates and manager. Prioritization: Understands and acts according to task prioritization assigned.
Notes dependencies. Dealing with Ambiguity: Handles risk, change, and uncertainty within their personal scope of work effectively. Decides and acts responsibly during routine business, and when in high pressure situations. Self-organization.
Reliability, Delivery Accountability: Commits to a realistic amount of work, and works with their teammates both to ensure they understand priority and urgency, and to deliver upon them accordingly. Escalates any blockers, delays, and cost ballooning to their team daily. Clarifies expectations with their teammates. Economic thinking: When taking action, weighs cost and value in order to take the most economic action with help from more senior engineers.
Uses this type of thinking to make suggestions to teammates. Decision making. Decision making: Strives to be objective and reflects on their own biases when making decisions. Holds themselves accountable for decision and outcomes.
Driving alignment. Driving Alignment: Has conversations with leaders based on organizational strategy and principles with their teammates when appropriate. Strongly oriented towards goals and works towards their team's goals. Process thinking.
Process Thinking: Thinks about team practices and processes and discusses improvements with team. Mentoring. Mentoring: Seeks out mentorship to grow their own experience. Mentors their teammates in an open, respectful, flexible, empathetic manner.
Qualifications. Relevant Bachelor's degree with 4-6 years of hands-on coding experience, or, relevant Master's degree with 2-4 years of hands-on coding experience. Core Competency Requirements:. Proficient with JavaScript, Nodejs, React or AngularJS, MongoDB and SQL.
In-depth knowledge and experience with developing web applications with service-oriented framework, Microservices and Rest APIs. Extensive experience designing and developing enterprise grade software. Experience with source control management systems like Git and continuous integration/deployment environments. Experience with agile development methodologies including Kanban and Scrum.
Experience with multi-threading and concurrency. Experience with debugging, performance profiling and optimization. Comprehensive understanding of object-oriented and service-oriented application development techniques and theories. Internally motivated, able to work proficiently both independently and in a team environment.
Strong communication skills with both intra and inter team members. Strong initiative to find ways to improve solutions, systems, and processes. Comfortable working without routine supervision. Educational Qualification.
UG: BCA in Any Specialization, B.Tech/B.E. in Any Specialization.
PG: M.Tech in Any Specialization, MCA in Any Specialization.