Are you excited about enhancing and modernizing applications in cloud-based architectures? Does developing software applications bring you excitement? Are you empowered by the industry shifts in technology and how YOU can impact the businesses and clients you help?
This role is right for you!
We are looking for a driven, independent, motivated, and, most importantly, customer-centric individual to join the Minneapolis Application Development team.
We help businesses strategize and resolve issues with architecture, security, and buggy performance, clear a stacked backlog, and ultimately making application development projects completed faster, more efficiently, and at high quality.
We are REAL people inspired by each other. Community, passion for technology, and hunger for knowledge bring us together and drive our team forward.
When we say we are customer-centric and built on relationships, we mean it.
Our team starts with the customer first, working together for one goal, their success. If you’re interested in joining a rapidly growing team, excited about technology advancements, and ready to put your stamp on breaking into accounts, you’ve come to the right place.
AIM Consulting is an award-winning industry leader in technology consulting and solutions delivery. AIM’s differentiation is our collaborative engagement model that provides cross-functional results. We work with clients, shoulder to shoulder, for one goal – their success. Founded in 2006, with offices in Seattle, Minneapolis, Denver, Houston, and Chicago, we are ranked among the fastest-growing private companies and best companies to work for due to a long track record of success with our partners and consultants.
Project Delivery: Responsible for the successful delivery of work on engagements with AIM’s clients. Helping clients solve complex problems, push through challenging situations, and adapt new processes and software. Great customer service, passion for technology, and team success is our focus.
Consultant Community: Driving internal technical discussions, or technology exploration is vital to individual and organizational improvement. Playing an active role is each consultant’s responsibility. Contributing and learning whenever possible.
- Assume Multiple Roles – With any highly functioning team, the members of the team are more focused on success than what role they play in it. Being flexible is critical to a consulting team’s success.
- Verbal and Written Communication – Effective communication with your Project Lead is paramount. Being able to share successes and challenges, as well as work progress is the bar. Good documentation and timely updates to tasks.
- Spotting Risks – Being able to identify patterns and associated risks is important. Understanding dependencies to your work, and possible impacts.
- Statements of Work – Work is done based off contracts that have been mutually agreed upon. Knowing what’s in and out of scope, as well as the expectations of milestones and release schedules is required.
- Meeting Commitments – Challenges always show their ugly head. What’s important is that we leverage team members, tools, and processes to remove blocking issues quickly and effectively. Communicating changes in plans early and often.
- Organizational Growth – As with most companies, ours relies on the contributions of our employees. Learning lunches, project retrospectives, training, and consultant community are essential to our growth and success.
- Continuous Improvement – You should be focused on continually learning and increasing your value both individually and collectively. Using retrospectives to help you understand where you have room to grow and capitalizing on it.
- Variable Team Compositions – Being able to work individually or within a team is important.
- Project Estimation – Being able to estimate work items beyond your individual tasks.
- Maintaining Quality – Keeping an eye on the work contributed by all team members. If you see areas for improvement, you bring them up. An overall sense of ownership.
- Mentoring – Mentoring others on your team, or elsewhere in the organization. Sharing industry standard best practices, or modern architectural improvements.
- Community Development – Organizing and leading discussions and events within the organization. Creating workshops, sharing seed projects, collaborating on process improvements.
- Interviewing – Making sure we select the right people to make AIM successful is huge. We need our senior people to help us weed out those that aren’t right for AIM, and make sure we don’t miss out on those that will make us even better.
- 3+ years of experience in architecture and design of highly available and scalable backend services
- Experience building and delivering innovative solutions in an enterprise setting
- Experience with JVM languages such as Java, Clojure, Scala and Groovy
- Experience with JVM service frameworks such as Spring Boot
- Experience with Reactive libraries such as RxJava, Ratpack, Reactor, Akka and Vert.x
- Experience with Messaging technologies such as Kafka, ActiveMQ, RabbitMQ and Amazon SQS
- Experience with relational database technologies such as MySQL, Oracle and Postgres
- Experience with NoSQL technologies such as Cassandra, DynamoDB, ElasticSearch and MongoDB
- Experience with microservice logging, metrics and monitoring
- Must be passionate about software development. You will be expected to be able to build prototypes / frameworks and perform code reviews.
- Highly effective communication skills.
- Ability to flourish in an agile organizational culture, where changes in priorities and processes is the norm.
- Experience with Cloud infrastructure and services (AWS, GCP, Azure)
- Experience with serverless architectures
- Experience with NodeJS services (Express, Koa, hapi)
- Experience building out continuous integration and deployment environments.
- Experience with test automation.