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 Title: Software Developer / Software Engineer
Location: Abuja, Federal Capital Territory
Location: Full Time
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.
A minimum of 2 years of professional experience, during which you’ve developed technical expertise and stellar professional skills.
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)
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.