Senior Software Engineer Full stack Apply
Role : Senior Software Engineer Full stack
Company : Feuji. Inc
Experience : 4 to 6 years)
Company Location : Hyderabad
About Feuji
Since its inception in 2014, Feuji, Inc. has come a long way. Within a few years, Feuji grew from a small team to more than 400 dedicated employees. Today, with its global network and industry-leading expertise in technology solutions and emerging digital business processes, Feuji provides a unique value proposition for its customers.
In the last few years, Feuji has actively supported multiple projects in India, Costa Rica, and the USA in the areas of healthcare, education, skill development, and ecological preservation. What's next for Feuji? We are looking forward to continuing our work in the areas of digital transformation and sustainable community development by consistently delivering lasting positive impact.
JOB SUMMARY
The Software Engineer III is a full-stack developer proficient at working in all layers of complex software applications. This engineer works on an agile product development team as a hands-on contributor and collaborator. The Software Engineer III plays an important role on their team by leading significant initiatives, establishing team best practices, guiding peers through tough challenges, and who can become the \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"go to\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\" person for features or components of technology solutions which transform healthcare into a safer and more cost-effective industry.
Task
Software Development
Create high quality software features and components that integrate into complex software solutions. Develop software that is logically well-structured, fulfills requirements, is readable, maintainable, testable, and performant using standard idioms and common software craftsmanship techniques. Contribute to sizing decisions and complexity evaluation for initiatives. Pair with other engineers and apply clean code techniques to produce high quality code.
Testing & Quality Assurance
Create testing strategies that include performance, security, regression, and automation testing concepts. Create appropriate unit, integration, and automated acceptance tests for features based on requirements. Create automated tests for positive and negative scenarios. Utilize test[1]driven development (TDD) to guide development. Coach peers on TDD and test strategy concepts.
Data Management, Infrastructure, Integrations
Devise data storage and access strategies during development work. Use knowledge of data modeling, data storage, and data transmission techniques to make appropriate design decisions. Understand the basics of ML and data analytics and can apply this knowledge to increase the business value of data through transformation. Design system integration strategies leveraging cloud and managed services during product design and development. Leverage experience with infrastructure as code concepts to design modules for reuse, container orchestration, and data migration.
Operations
Create highly dependable software features and systems through usage of operationalization development techniques such as monitoring, logging, metrics gathering, system health, and reporting. Improve operations culture of team by defining best practices, advocating for deployment automation, and influencing technology selection based on product and team needs. Manage build pipelines, write code for collecting and radiating key metrics. Security & Compliance Develop software with a security-first mindset using knowledge of standard security protocols and common security risks, secure coding techniques, and appropriate usage and protection of sensitive information such as PHI. Proactively identify and mitigate single-avenue threats. Implement basic security safeguards, leverage threat modeling for system-level security.
Product & User Experience
Develop software features with user experience in mind. Extend and enhance user-facing software effectively, create reusable interaction patterns, and define best practices. Translate design goals into functional user-facing implementations. Address tech and design debt based on priority.
Requirements & Design
Collaborate with stakeholders to understand business context and share technical context. Write detailed technical stories which transform business context into technical specifications. Apply established architectural themes to new problem spaces and make cost-effective feature design decisions
KNOWLEDGE & REQUIREMENTS
Highly motivated, self-learner, and technically inquisitive
One or more server-side programming languages (Java with Spring Boot experience preferred)
One or more client-side programming languages (JavaScript React experience preferred)
Experience developing, deploying, and supporting REST services and microservices.
Experience using cloud services for concepts such as storage and compute. Capable of applying infrastructure as code practices. Experience with Kubernetes and AWS preferred.
Experience with relational databases, non-relational databases, and messaging systems.
Provides a positive impact on team: influences team decisions, mentors peers, drives innovation.
Works well with business stakeholders. Experience proposing product features to increase product value.
Excellent written and verbal communication skills
EDUCATION & EXPERIENCE REQUIREMENTS
Minimum years of work experience: 4- 6 years
Minimum level of education or education/experience: Bachelors or equivalent work experience in Computer Science, Computer Engineering, Electrical Engineering, Information Systems, IT