Jobgurus Job advert

Software Developer / Software Engineer Job at ByteWorks Technology Solutions

Byteworks Technology Solutions Limited is a fast-growing software and technology company indigenously owned; constituted of smart and committed young professionals. The thrust of Byteworks is that by implementing its products through excellence, commitment, innovation, and integrity, there is a consistent increase in revenue generation in Nigeria as a whole by employing its products in every state/sector it is applied.

We are recruiting to fill the position below:

Job Position: Software Developer / Software Engineer

Job Location: Abuja, Federal Capital Territory   
Location: Full Time

Job Role


  • As a software developer, you’ll be the brain behind crafting, developing, testing, going live and maintaining the system.
  • You are passionate in understanding the business context for features built to drive better customer experience and adoption.

Experience

  • A minimum of 2 years of professional experience, during which you’ve developed technical expertise and stellar professional skills.

Requirements:

  • Highly proficient in Java/Java EE and any other programming and/or scripting languages
  • Proficient in web services / API design and implementation with Java (proficiency in the Spring framework is an advantage), as well as web application frontend (Angular, React, HTML/CSS, Responsive Design)
  • Understanding of JavaScript core language concepts -- DOM manipulation, Fetch API, ES6+ features
  • Experience with architecture and design principles, building to consider maintainability, performance, security requirements, and impact.
  • Proficient in data layer design (for both relational and nosql databases). Practical knowledge of related concepts such as normalization (up to the 3rd normal form)
  • Familiarity with at least one web server technology -- (ex: Apache, Nginx)
  • Comfort working within agile methodologies and experienced in estimation and time management
  • Candidate should have a very good grasp of the software development lifecycle: SDLC (Requirement gathering and analysis, Design, Implementation and Coding, Testing [including unit and integration testing], Deployment, Maintenance)
  • Understands and is able to design and implement software to support performance on scale (when it's interacting with a lot of users and/or a lot of data)
  • Follows good practice for software development (clean code, test coverage, source code version control, pull requests, code review, issue tracking, graceful as well as aggressive error handling)
  • Practical knowledge of data structures and algorithms
  • At least some basic agile / project management skills; required to deliver on a software feature / project
  • Have a working understanding of application security concepts (security of data at rest or in transit, access control, audit logging) and be able to apply them in application design and development
  • Proficiency in the use of modern tools and technologies that help with the software development lifecycle. Specifically:
    • Git for version control
    • Maven or Gradle for project lifecycle management
    • UML2.0+ (Class diagrams, Use case diagrams)
    • Docker for containerized deployment & test-driven-development (TDD)
  • Attitude to fit, and a decent dose of effective curiosity. Our values are Excellence, Commitment, Innovation, and Integrity; and our approach to work is Kaizen - Continuous Improvement
  • Strong ability to problem-solve, debug, and understand pertinent performance metrics
  • Knowledge of unit, integration, e2e and UI testing, with at least one relevant testing framework
  • Awareness of the capabilities of applicable languages/frameworks/libraries as well as the inherent differences between them in order to understand trade-offs and make recommendations.

Note: The requirements listed above are the minimum.