Software Engineer

If you enjoy helping clients achieve business success through technology, you will love being a member of the Datum team. We hire only those with a commitment to the highest level of technical and professional excellence, coupled with leadership skills and a great attitude.

<- Back to job list

Software Engineer

Location: Montgomery, Alabama
ID Number: #ILS-S-AL

Software Development Engineer will implement standard methodology development techniques and perform testing as part of a User Interface refactor effort. Assist with architecting React User Interface application. Build and maintain reusable React components. Create user interface pages using the React component library and JavaScript REST clients. Working under minimum supervision and adhering to established procedures for quality assurance, test and analyze software components to ensure usability and applicability to the business environment and customer during the software development life cycle including post-implementation/deployment phase.

You will work with our highly skilled team in an agile environment to support a growing platform.

- Architect, build, and maintain application library of reusable React components, selecting and making use of open-source packages as appropriate.
- Replace existing Spring MVC controllers and JSPs with Spring Rest controllers and React components in a new Single Page Application.
- Effectively represent the development team and develop relationships across multiple internal groups; Contributes to customer satisfaction through quality code and on-time delivery.
- Role requires a fair amount of testing per project demands, writing test cases, taking part in peer reviews, participating in design sessions and code reviews.
- Continuously focuses on and develops professional skills and masters new tools / techniques. Diagnoses development needs most applicable to the team, and pursues training / tools to fill those needs.
- Develop relationships across multiple groups; Contributes to customer satisfaction through quality code and on-time delivery.
- Continuously focuses on and develops professional skills
- Pursues training /tools to fill needs.
- Translate application storyboards and use cases into functional applications
- Design, build, and maintain efficient, reusable, and reliable code
- Ensure the best possible performance, quality, and responsiveness of applications
- Identify bottlenecks and bugs, and devise solutions to these problems

7+ years web UI framework development experience using Angular, React, Ember, and/or Vue
• 3+ years of Single Page Application (SPA) and/or Progressive Web Application (PWA) development using React
• 3+ years of Bootstrap experience
• React Native experience preferred
• Experience with HTML5, JavaScript/ES6, TypeScript, CSS3
• Experience in developing scalable and secure UI applications using REST and/or GraphQL
• Experience in developing UI unit tests using Mocha, Jest, Jasmine, and/or Enzyme
• Experience with CI/CD
• Bachelor’s degree required
Overview: Perform before Interview
As a consultant, you have been hired to build a progressive web application for a customer to track contacts with data persisted locally in the browser with no server data integration required. The data should be available even if the browser is closed and reopened.
Functional Requirements
There are four user stories associated with the customer requirement:

1. As a user I want to create a new contact by entering the first name, last name, email, and phone number so that I can track the people I know.
2. As a user I want to be able to search for a contact by first and/or last name so that I can find contact information quickly.
3. As a user I want to be able to update contacts when their last name, email, or phone number change so that I can keep my contact information up to date.
4. As a user I need to be able to delete a person I no longer associate with so that I can keep my contact list clean.
Technical Requirements
The customer has some limitations on the technology set that can be used to implement the functional requirements and they are as follows:

1. React 16.12 or higher
2. React-Final-Form 6.3.3 or higher
3. Bootstrap 4
4. Node 12.14.1 or higher (latest LTS)
5. Application must execute via “npm run contacts”
6. Test dev server must listen on port 4242
When delivering the software, please ensure the following.

1. The software must be delivered as a zip of the complete project sans node_modules and any build directories.
2. The zip name must be your name in the format of .zip.
When we receive your zip, we will execute the following in a MacOS environment running the latest LTS Node:

1. Unzip the contents
2. Run “npm install”
3. Run “npm run contacts”
4. Open a browser to http://localhost:4242/
5. Test the live app to ensure it works per the functional requirements specified above

The solution provided will be used as the basis for your interview. Be prepared to discuss your approach.

Datum Software is an Equal Employment/Affirmative Action Employer and is dedicated to providing employment and promotional opportunities based on individual merit. Qualified minorities, females, disabled individuals, and veterans are encouraged to apply. Datum Software is also committed to providing a drug free workplace.

Hi I'm
Regina Guinn
Interested in this job?
Act now!
Your message:*
Attach a resume: CHOOSE FILE
Supported file types are: doc, docx, odt, pdf, rtf, txt
* Required field

Don't see your dream job? Click Here