Our React Native Engineer will work within agile teams to maintain and enhance iOS / Android Mobile applications. Responsible for taking documented product requirements and ensuring the implementation of said requirements meet the acceptance criteria, while delivering quality code and scalable solutions.
- Bachelor’s degree in Computer Science is preferred.
- 3+ years of professional experience working with React Native.
- 3+ years of professional experience working with RESTful web services.
- 5+ years of professional software development experience.
- Experience working with Swift, Objective C, and Java a plus but not required.
- Experience with PHP is a plus but not required.
- A successful candidate will have a moderate understanding of business functions, a firm understanding of design methodology, and possess excellent communication skills with the ability to explain business functions to programmers and technology restraints to non-technical business managers.
- Experience as a Software Engineer; demonstrated success in developing a variety of software systems while taking on increasing responsibility for analysis, design, implementation, and deployment tasks.
- Experience developing data-driven applications utilizing significant relational database engines as part of the overall application architecture. Experience with any or all the following is highly desirable: MongoDB, PostgreSQL, Oracle, SQL Server.
- Experience building web-based software systems, utilizing N-tier architectures, dynamic content, highly scalable approaches, and complex security models/implementations.
- Proficiency developing and troubleshooting complex software systems that run in mixed environments including Linux, Unix, and/or Windows.
- Experience with Agile / Scrum software development is a plus.
- Analyzing information, general programming skills, software design, software debugging, software documentation, software testing, problem solving, teamwork, software development fundamentals, software development process, and software requirements are all necessary skills.
- Common IT hardware, software, platform, and system knowledge: C, C++, Java, .Net, Python, BEA WebLogic, WebSphere, J2EE, JBoss, ADO, Perl, HTML, JSP, Java Script, Web Services, SOAP, XML, ASP, JSP, PHP, MySQL, SQL Server, Oracle, UNIX, Linux, RedHat Linux, STL, XSLT, OWL, AJAX, J2EE, J2ME, J2SE, Sun Solaris.
Essential Duties/Responsibilities: To perform this job successfully, an individual must be able to perform each essential duty and responsibility satisfactorily. The requirements listed below are representative of the knowledge, skills, and/or ability required.
- Full life cycle application development.
- Designs, codes, and debugs applications.
- Software analysis, code analysis, requirements analysis, software review, identification of code metrics, system risk analysis, and software reliability analysis.
- Object-oriented Design and Analysis (OOA and OOD).
- Software testing and Quality Assurance.
- Performance tuning, improvement, balancing, usability, automation.
- Implements localization or globalization of software.
- Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
- Documents and demonstrates solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments, and clear code.
- Prepares and installs solutions by determining and designing system specifications, standards, and programming.
- Improves operations by conducting system analysis; recommends changes in policies and procedures.
- Updates job knowledge by studying state-of-the art development tools, programming techniques, and computing equipment; participates in educational opportunities, reads professional publications; maintains personal networks; participates in professional organizations.
- Keeps proprietary information and company data confidential.
- Provides information by collecting, analyzing, and summarizing development and service issues.
- Accomplishes engineering and organization mission by completing related results as needed.
- Develops software solutions by studying information needs; confers with users, studies systems flow, data usage, and work processes; investigates problem areas; follows the software development cycle.
- Provides engineering support, when necessary, to technical operations staff when they are building, deploying, configuring, and supporting systems for customers.
- Participates with the engineering and operations teams to define plans for standardizing, scaling, and enhancing the company’s products and the services utilized to deploy/install/release those products.
- Other duties as assigned by supervisor. These may, on occasion, be unrelated to the position described here.
- Consistent and predictable attendance and punctuality are essential functions of the position described here.