re:purposeAnn Arbor, MI | Posted: 3 months ago
re:purpose in partnership with one of our top clients is looking for a talented, result oriented, innovative software engineer to join their team. Responsible for building services that enables searching of rate products across multiple channels, including all of the web & mobile platforms.
In addition to building applications that can hold up to the scale & growth of our business, our team of engineers work collaboratively with the business leaders to come up with innovative solutions to grow the business. We believe in software craftsmanship and that there is real value in developing software so that it can be easily understood, maintained, and extended. We are all about team work, accountability, innovation, and a customer-first approach. We work hard, but do so in a collaborative, fun and flexible work environment.
As a member of the team, you will have the opportunity to work on mission critical projects with direct impact on the evolution of our business. You will be able to apply your programming skills towards building low latency and high throughput transactional services. You will work on systems that serve millions of searches a day, generate millions of events, and are monitored 24x7 using early warning and analytics systems such as Kafka and Elastic Search. Our search systems perform highly concurrent, real-time searches across our vast advertiser network and collects and parses data from a diverse set of interfaces to get the best rates for our customers. We constantly explore new technologies and engineer better solutions for ever demanding business needs.
- Designing, modifying, developing, writing, testing and implementing software.
- Taking ownership and responsibility of the work at hand and shepherding code through to production.
- Implementing web services and REST APIs to power internal and partners web sites.
- Building a scalable, robust and reliable infrastructure to support our website and services.
- Collaborating with product owners, scrum masters, and other developers to deliver a quality product.
- 2+ years of software development experience
- Experience with object-oriented PHP and Laravel and/or Symfony frameworks
- Experience with PostgreSQL, MySQL, and/or SQL Server databases
- Experience working in a Test Driven Development (TDD) and Continuous Integration/Continuous Delivery (CI/CD) environments
- Experience developing and supporting production quality API
- REST, SOAP and API services, HTTP Status Codes, Content Negotiation, API versioning, Caching
- Security , Stability, Reliability, Scalability, Fault Tolerance, Performance, Monitoring, Documentation
- Experience with various architectures: Domain Driven Design, CQRS, Event Sourcing, Hexagonal Architecture, Event Driven Architecture, Microservices, Cloud Native
- Experience with testing: Unit Testing, Test Driven Development, Integration Testing, Load Testing, Test Automation, Consumer Driven Contract Testing
- Experience with Node.JS, Python, or Go is a plus
- Experience with AWS EC2, S3, and/or Lambdas is a plus
- Experience with PHPUnit, PHPSpec, Jasmine, Karma, Mocha, Chai and other unit testing libraries and frameworks
- Experience with various tools: GIT, Postman, Wireshark, Swagger, Docker, Jenkins
- Education: BS/MS degree in Computer Science, Engineering or a related subject is a plus.