Software Engineer (Back End) - Nepal

ABOUT THE COMPANY

Fusemachines (http://www.fusemachines.com) builds AI Schools in underserved communities (AI Education Solution) and connects the graduates to AI job opportunities (AI Talent Solution). Fusemachines AI Schools run AI Microdegree® and Certificate programs in physical classrooms using it’s proprietary content and learning platform.

JOB DESCRIPTION

The ideal candidate will be responsible for developing, implementing, and testing the features that satisfy the requirements of the product, monitor, and maintain existing products and report progress to concerned personnel. This is a great opportunity for a Software Engineer who is looking for a challenging, rewarding, and hands-on experience in a fast-growing startup.

Required skills/Competencies :

  • Must have a full-time degree in Computer Science or similar.
  • At least 2 years of work experience in Software Development using Java.
  • Proficiency in back-end technologies; Core Java, Spring Framework, and Spring Boot knowledge required.
  • Familiarity with Project Management tools such as Jira and Asana.
  • Ability to integrate third-party services; SDK implementations.
  • Working Experience with Dependency Management Tools; Maven, Gradle.
  • Ability to write test cases using testing frameworks and tools; JUnit, jMock, Mockito, TestNG.
  • Comfortable with IDEs like Eclipse, IntelliJ along with its debugging techniques.
  • Ability to design, build, and work with RESTful Web Services in JSON formats.
  • Follow agile principles and processes including (but not limited to) standup meetings, sprints, and retrospectives.
  • Theoretical and practical knowledge of SQL/NoSQL databases with hands-on experience in at least one database system.
  • Collaborating with the front-end developers and other team members to establish objectives and design more functional, cohesive codes to enhance the user experience.
  • Solid understanding of Data Structure and Algorithms.
  • Solid understanding of Object-Oriented Programming concepts.
  • Knowledge of Linux/Windows with system troubleshooting capabilities.
  • Strong problem solving and written and verbal communication skills in English.
  • Familiarity with Version Control tools such as Git.
  • Familiarity with the deployment process.
  • Familiarity with AWS and various services.
  • Familiarity or the ability to learn and adapt to current trends and best practices.
  • Must be self-motivated, flexible, and collaborative, with an eagerness to learn.
  • Ability to work independently or in a collaborative environment with a proactive attitude.
  • Regular, reliable attendance is a requirement for this job.

Key Responsibilities:

  • Assist with writing requirement specifications and design documents for a variety of development tasks including feature development, database design, and system integrations.
  • Assist with developing applications and code software applications to adhere to designs that support business requirements for internal and external clients.
  • Work under tight deadlines to deliver quality, robust software.
  • Preparation, drafting, and review of software documentation and project reports to meet senior staff and client requirements.
  • Participate in implementing new software features and maintain existing features.
  • Refactoring, debugging, testing, and implementing changes to existing applications to meet project requirements.
  • Report work progress regularly to the supervisor.
  • Regularly attend internal and client meetings.
  • Deploy, monitor, and maintain applications.
  • Provide proper guidance and supervision of subordinate engineers and their work.

 

Read More

Apply for this position

Required*
We've received your resume. Click here to update it.
Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or Paste resume

Paste your resume here or Attach resume file

Human Check*