yns4real: Send me your details including phone number you have neva used for this application and new email address. I will get it done for you. State the post desired.
First of all, Congratulations to you all for being shortlisted for the assessment. I'll advise you all to start studying the workforce past questions, as that's what I'm doing currently. One more thing: Just try to learn a few stuffs about the computer, since the job role specifies DIGITAL LAB TRAINEES. Also, don't be scared. What you're expecting may not be what you would see. Just be calm in your preparations.
Are you a graduate or corper looking to have a professional CV that will get you that interview? My friend Carol creates, proofreads and edits quality-looking CVs at affordable prices.
More-Recipes provides a platform for users to share the awesome and exciting recipe ideas they have invented or learnt. Suppose a user comes up with a food recipe, he/she can post it on More-Recipes and get feedback in form of reviews and votes from other users who explore that recipe. Users can also keep a list of their favorite recipes on the application.
How?
This project is broken down into challenges and completion of all phases would contribute greatly to your learning towards becoming a full-stack developer. Upon completion, you would have built a world-class full-stack JS application (front-end and back-end).
Why?
Andela distributes opportunities. We disseminate Learning and catalyse Technology leadership. The project is founded on the premise that aspiring Technology Leaders learn programming whilst building things that matter and that the best way to learn is by building a complete product.
This project has one objective: create opportunities for learning where learners build products that do real stuff. In this way, we will inspire change in African tech landscape.
Challenge 1 - Create Pivotal Tracker Board and HTML/CSS Templates
Timelines
Expected Length to Complete: 1 week
Due Date: 28th of August
Helpful Links & Tips
To get started with Pivotal Tracker, use Pivotal Tracker quick start.
Here is an sample template for creating Pivotal Tracker user stories.
Use the recommended Git Workflow, Git branch, Commit Message and Pull Request (PR) standards. Also adhere to the GitHub Flow guidelines to facilitate code reviews.
Guidelines
Create a Pivotal Tracker Board
Use the Pivotal Tracker Board to create a roadmap for the following client-side and server-side features. NB: you’re not implementing these yet, just create a roadmap. Remember to review the guidelines for how to go about creating your pivotal tracker board.
Templates for the following:
User registration/login pages.
A page that shows top recipes and allows viewers to search for recipes
A page that shows details of a recipe and allows logged in users to do the following:
Post reviews for a recipe
Upvote recipe
Downvote recipe
A page that shows the favorite recipes of a registered user
A page where a registered user can see his/her profile
A page where a registered user can do the following:
Add recipe
Modify the recipe he/she added
Delete the recipe he/she added
Basic API routes that do the following:
Allow users to create accounts and login to the application
Allow a logged in user to add a recipe
Allow a logged in user to modify a recipe he/she added
Allow a logged in user to delete a recipe he/she added
Allow a logged in user to get all recipes in the application
Allow a logged in user to get all his/her favorite recipes
Allow a logged in user to post a review for a recipe
Allow a logged in user to get just recipes with the most upvotes
Other features
On both the server-side and client-side, replace the implementation for authentication with JSON Web Tokens.
Registered user should get notifications (either in-app or email notification)
When his or her recipe gets a review
When a favorite recipe of his or hers gets modified
Registered users should be able to create categories for his/her favorite recipes
Registered users should be able to search for recipes in the application (implement pagination).
Extra Credits: NB: executing one or more features from the extra credits means you have exceeded expectations.
Users should be able to see the number of times a recipe has been viewed.
Registered user should be able to find recipes based on a list of ingredients inputted
Create a Github Repository and clone it to your computer
Tip: find how to create a Github Repository here.
Create three directories in your local git repo
template - this will contain the UI template for the front-end in HTML/CSS
server -this will house your back-end implementation in NodeJS-Express
client - this will house your front-end implementation in ReactJS and Redux
Build out the below specified templates into the template directory
In the template directory, build out all the pages (with HTML, CSS, JS, and any other CSS framework (N.B You are to use either Bootstrap 4 or Materialize CSS framework. Do not download and use any UI template!!! )) and the necessary UI elements that will allow your application perform the following functions:
User registration/login to the application.
This would contain a basic form that allows people create accounts and login to the system.
The submit button is not expected to be functional here.
A page that shows top recipes and allows viewers to search for recipes
A page that shows details of a recipe and allows logged in users to do the following:
Post reviews for a recipe
Upvote recipe
Downvote recipe
A page that shows the favorite recipes of a registered user
A page where a registered user can see his/her profile
A page where a registered user can do the following:
Add recipe
Modify the recipe he/she added
Delete the recipe he/she added
NB: you’re not implementing the core functionality yet, you’re only working on the User Interface!
NB: you are to create a pull request for the templates when you are done working on them locally
Targeted Skills
After completing this challenge, you should have learnt and be able to demonstrate the following skills:
Agile
Use a project management tool (Pivotal Tracker) to manage your progress on the tasks
Github
Create a GitHub repository and clone it locally.
Use Git Workflow, Git branch, Commit Message and Pull Request (PR) standards.
Also adhere to the GitHub Flow guidelines to facilitate code reviews.
HTML/CSS
Create all the templates specified above
Frontend Design - Material Design Frameworks
- Bootstrap 4
Use a Material Design Framework (Material UI or Materialize CSS recommended) and read through Google design spec for your reference or Bootstrap 4.
You are not to download and use any website template. You are to code the HTML, and apply your own CSS and any necessary stylesheets or CSS classes provided by the UI framework of your choice( fe.g Bootstrap 4 or MaterializeCSS).
Challenge 2: Setup Server-Side and Create API Endpoints
Timelines
Expected Length to Complete: 1 week
Due Date: 31st of August
Helpful Links & Tips
Use the recommended Git Workflow, Git branch, Commit Message and Pull Request (PR) standards. Also adhere to the GitHub Flow guidelines to facilitate code reviews.
All Javascript MUST be written in >=ES6 and should use Babel to transpile down to ES5
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
Adhere strictly to the Airbnb style guide for ES6. NB: A good place to start would be ensuring that eslint has been setup and is working!
You can use this link as a guide to using Sequelize ORM.
Install PostgreSQL to your local computer and connect to PostgreSQL database server from a client application such as psql or pgAdmin.
Before you begin this section, ensure to review this materials
Guide to Restful API design
Best Practices for a pragmatic RESTful API
Guidelines
In the server directory:
Setup the back-end (server side) of the application Ensure that you use NodeJS - Express to do this.
Setup eslint for linting Ensure you have the style guide rules configured properly.
Write the server-side code to power the front-end built in challenge 1.
Use Postgresql for relational data persistence and Sequelize as your ORM.
At minimum, you should have the following API routes working:
API routes for users to create accounts and login to the application:
POST: /api/users/signup
POST: /api/users/signin
An API route that allows logged in user to add a recipe:
POST: /api/recipes
An API route that allows logged in user to modify a recipe that he/she added PUT: /api/recipes/<recipeId>
An API route that allows logged in user to delete a recipe that he/she added DELETE: /api/recipes/<recipeId>
An API route that allows logged in user to gets all the recipes in the application GET: /api/recipes
An API route that allows logged in user to post a review for a recipe POST: /api/recipes/<recipeId>/reviews
An API route that allows a logged in user to get all his/her favorite recipes
GET: /api/users/<userId>/recipes
An API route that allows a logged in user to get just recipes with the most upvotes
GET: /api/recipes?sort=upvotes&order=ascending
Ensure to test all routes and see that they work using Postman.
Write tests for all functions, models, middleware and API routes using Mocha or Jasmine.
Integrate TravisCI for Continuous Integration in your repository (with ReadMe badge).
Integrate test coverage reporting (e.g. Coveralls) with badge in the ReadMe.
Obtain CI badges from Code Climate and Coveralls. These should be in the ReadMe.
Integrate HoundCI for style checking commits in your PRs according to the ESLint configuration.
Deploy your server-side application on Heroku.
Use API Blueprint, slate or swagger to document your API. Docs should be via your application’s URL.
Version your API using url versioning starting, with the letter “v”. A simple ordinal number would be appropriate and avoid dot notation such as 2.5. Sample - https://somewebapp.com/api/v1/users
NB: you are to create a pull request for the api routes when you are done working on them locally
Targeted Skills
After completing this challenge, you should have learnt and be able to demonstrate the following skills:
ES6 + Babel
All Javascript MUST be written in ES6 or higher and should use Babel to transpile down to ES5
OOP + SRP
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
.eslint - Airbnb style guides
Use a .eslint in your root directory of your project as your eslint configuration (in your IDE) to expose Javascript syntax errors / nitpicks. Make sure to extend the airbnb styleguide.
Continuous Integration
Integrate HoundCI for style checking commits in your PRs
Integrate a CI tool(e.g. TravisCI) to also run tests and report pass/fail state with badge in readme and also test coverage reporting(e.g. coveralls)with badge in the readme.
Obtain CI badges from Code Climate and Coveralls. p.s this should be in the readme
NodeJS
You were required to create a server directory in your repository and project directory in challenge 1. The“server” directory would contain the server-side implementation you come up with in this challenge required to power the front-end.
Setup the back-end (server side) of the application with NodeJS - Express.
Databases
Implement data persistence using Postgresql with Sequelize ORM
Build API
Download and install the Google Chrome app Postman. This would be used to test the API you are building.
Challenge 3: Implement Front-end using React and Redux
Timelines
Expected Length to Complete:
Due Date:
Helpful Links & Tips
Use the recommended Git Workflow, Git branch, Commit Message and Pull Request (PR) standards. Also adhere to the GitHub Flow guidelines to facilitate code reviews.
All Javascript MUST be written in >=ES6 and should use Babel to transpile down to ES5
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
Adhere to the Airbnb style guide for ES6. A good place to start would be ensuring that eslint has been setup and is working
Use SASS/SCSS to implement all custom styling.
Guidelines
In your client directory, setup your front-end application (ReactJS-Redux).
Ensure Webpack is setup for running mundane tasks NB: At minimum, configure it to convert SCSS => CSS) and transpiling.
Implement the client-side application in React and Redux
This should contain all the features pre-designed in challenge 1.
The implementation should make use of the APIs built in challenge 2.
Write tests for all actions, reducers and components using Enzyme, Jest or any relevant testing utility.
Write End-to-End tests for all features implemented using Protractor, Nightwatch or any Selenium-based libraries.
Ensure your front-end is also hosted on Heroku.
NB: you are to create a pull request when you are done with this challenge
Targeted Skills
After completing this challenge, you should have learnt and be able to demonstrate the following skills:
.eslint - Airbnb style guides
Use a .eslint in your root directory of your project as your eslint configuration (in your IDE) to expose Javascript syntax errors / nitpicks. Make sure to extend the airbnb style guide.
Continuous Integration
Integrate HoundCI for style checking commits in your PRs
Integrate a CI tool(e.g. TravisCI) to also run tests and report pass/fail state with badge in readme and also test coverage reporting(e.g. coveralls)with badge in the readme.
Obtain CI badges from Code Climate and Coveralls. p.s this should be in the readme
Github
Use Git Workflow, Git branch, Commit Message and Pull Request (PR) standards.
Also adhere to the GitHub Flow guidelines to facilitate code reviews.
HTML/CSS
Use SASS/SCSS to implement all custom styling
ES6 + Babel
All Javascript MUST be written in >=ES6 and should use Babel to transpile down to ES5
OOP + SRP
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
Testing
Install libraries required for component/unit tests eg Mocha, Jasmine,, Enzyme, Jest
Install libraries required for integration/e2e tests eg Protractor or other Selenium based libraries
Agile
Use a project management tool (Pivotal Tracker) to manage your progress on the tasks
ReactJS
- Redux
- Webpack
- Task-runners
Use ReactJS with the Redux architecture for your implementation
Install and configure Webpack to run mundane tasks like convert SCSS -> CSS, run your tests(Integration and unit).
A task runner should be setup to handle the various tasks that the application requires which include serving the app, and testing the app
Challenge 4: Implement other Features listed in Pivotal Tracker
Timelines
Expected Length to Complete:
Due Date:
Helpful Links & Tips
Use the recommended Git Workflow, Git branch, Commit Message and Pull Request (PR) standards. Also adhere to the GitHub Flow guidelines to facilitate code reviews.
All Javascript MUST be written in >=ES6 and should use Babel to transpile down to ES5
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
Adhere to the Airbnb style guide for ES6. A good place to start would be ensuring that eslint has been setup and is working
Guidelines
Maintaining all standards set in all previous challenges (tests, API documentation etc.), implement the other features (server-side and client-side) in the roadmap defined in Pivotal Tracker.
Ensure your full-stack application is hosted on Heroku.
NB: you are to create a pull request when you are done with this challenge
Targeted Skills
After completing this challenge, you should have learnt and be able to demonstrate the following skills:
Github
Use Git Workflow, Git branch, Commit Message and Pull Request (PR) standards.
Also adhere to the GitHub Flow guidelines to facilitate code reviews.
HTML/CSS
Use SASS/SCSS to implement all custom styling
ES6 + Babel
All Javascript MUST be written in >=ES6 and should use Babel to transpile down to ES5
OOP + SRP
Classes/modules MUST respect the SRP (Single Responsibility Principle) and MUST use the >=ES6 methods of module imports and exports.
Testing
Install libraries required for component/unit tests eg Mocha, Jasmine,, Enzyme, Jest
Install libraries required for integration/e2e tests eg Protractor or other Selenium based libraries
Agile
Use a project management tool (Pivotal Tracker) to manage your progress on the tasks
ReactJS
- Redux
- Webpack
- Task-runners
Use ReactJS with the Redux architecture for your implementation
Install and configure Webpack to run mundane tasks like convert SCSS -> CSS, run your tests(Integration and unit).
A task runner should be setup to handle the various tasks that the application requires which include serving the app, and testing the app
APPENDIX
Project Assessment Guide
Criterion
Does not Meet Expectation
Meets Expectations
Exceed Expectations
Code Functionality
The code does not work in accordance with the ideas in the problem definition.
The code meets all the requirements listed in the problem definition.
The code handles more cases than specified in the problem definition.
Comments
Solution is not commented.
Solution contains adequate comments.
Solution uses doc style comments and is self documenting.
Code Readability
Code is not easily readable or is not commented.
The names for variables, classes, and procedures are inconsistent and/or not meaningful.
Negligence of style guides.
Code is easily readable and necessarily commented.
The names for variables, classes, and procedures are consistent and/or meaningful.
Style Guides are adhered to.
OOP Usage
Solution did not use OOP or does not use OOP properly by not modelling required objects as required.
Solution made use of OOP according to the requirement of the assignment and does so in the appropriate fashion.
Test Coverage
Solution did not attempt to use TDD
70% test coverage
100% test coverage or 0% test coverage like a Bawse.
Load time optimization (client side only)
Did not bundle JS files and has multiple script includes in index.html(or whatever entry point is)
Bundled all files and has just one include declaration for both JS and CSS
Minifies bundle(s) and has sourcemaps available
UI/UX
Page is non responsive, elements are not proportional, color scheme is not complementary and uses alerts to display user feedback
Page is responsive (at least across mobile, tablet and desktops), color scheme is complementary, and uses properly designed dialog boxes to give user feedback
PREAMBLE The Industrial Training Fund (ITF) and the Nigeria Employers’ Consultative Association (NECA), in collaboration with Nigerian Bottling Company Ltd, wishes to admit qualified young Nigerians of sound character and learning potential to undertake an intensive Eighteen Months Training Programme on Technical Skills Development in the following areas: • Basic Bottling Process • Industrial Mechatronics • Automation and Process Control Engineering • Machine Shop Operation • General Fittings and Welding • Utility Maintenance and Operations
OBJECTIVES 1. To train and equip youths with employable skills in the vocational areas listed above 2. To promote a Public-Private Sector Model in Technical and Vocational skills training 3. To contribute to the capacity development of our country. EDUCATIONAL QUALIFICATION Candidates must possess the following qualifications among others: • BSc. 2ND Class Lower and Higher National Diploma or its equivalent in Electrical or Mechanical Engineering from recognized and accredited institutions. • Industrial experience will be an added advantage.
AGE Applicants should not be more than Twenty-Six years (26) old as at the time of application.
THE PROGRAMME Successful candidates will enjoy free tuition, lunch and a monthly stipend (not salary) for the entire duration of the program. It is a non-residential training at our Technical Training Centre located in Ikeja, Lagos. Trainees will be exposed to classroom, hands-on sessions and on-the-job training experience in any of Nigerian Bottling Company Ltd Plants in Abuja, Asejire, Benin, Challawa, Enugu, Ikeja, Jos, Kaduna, Maiduguri, Owerri and Port Harcourt. On successful completion of the training program, trainees will receive internal certificates of participation, while trainees will be prepared for the City and Guilds (London) external examination and they may be offered permanent employment as Technicians or Technical Operators with the company. METHOD OF APPLICATION Interested and qualified candidates should visit [url]e-recruiter.ng/portal/nbcttc[/url] to apply. Please note that only applications made on the website will be accepted. Candidates who meet the stated criteria will be contacted via email or by phone. Applicants shall sit for a Computer Based Test and successful candidates will be invited for an oral interview & medical examination. Application closes two weeks from the date of this advertisement.
Lessons should be learnt from this. There's no way I'll just go for an interview like that without knowing even an estimate of what d company is paying it's employees.
ubby26: Hello house. please I need help. my school says they don't send transcripts to organizations but only institûtions. How did anyone get theirs to kpmg?
Is the transcript a compulsory document in the KPMG recruitment process?
tippyboy: how the interview is gonna be has already been stated clearly in your inbox, you'll be sent a code challenge on Friday and you'd be asked to defend it on the day you chose for the interview.
Also don't make the same mistake i made the last time, don't copy code online, and if you copied it make sure you can defend it very well. Make sure you write a neat and read able code, comment your code very well with meaningful variable name(make sure your variables are in camel case or snake case if they are very long) what else... interview. Google search how to do that, and be careful cos everything you say will be used against you. (just kidding, they are mostly friendly guys with smiley faces and always typing something on their laptops). there interview questions is usually something like: have you ever worked in a group project before.? if you have someone misbehaving in your group how will you handle the situation.? have you worked on any project recently.? how will you feel if you don't make it to the bootcamp (please don't answer I will be very sad to this question). then make sure you know something about Andela most especially the epic value. and read some other interview questions you can get online.
So I just received a mail this morning inviting me for an interview in Lagos. Which explains that I have passed the Homestudy tests I took last month. Who else got the same?
Yes! Abstinence is the best. Most people think that just because everyone is doing it, then they too go into it it's totally wrong! Not just morally, but medically and spiritually. Even the psychological effects that follow r not to be left out. Let's abstain till marriage.
The human brain is done in such a way that some memories r kept forever. If someone does wrong to you, there is a tendency that that particular thing will come flashing back even if you don't want it to. Truth is, if you hv forgiven someone, you may not forget that thing but if you still harbor hatred or ill feelings because of what he/she had done to you, then there is a problem.